我有一个ArrayList
类,并尝试将其保存到文件中。我正在写一个测试方法来将字符串保存到一个文件中,然后加载它们。从字符串中读取字符串而不是字符
我在FileWriter
类中找到一个方法来编写一个字符串。我无法在FileReader
中找到任何方法读取字符串。有没有办法做到这一点?
我有一个ArrayList
类,并尝试将其保存到文件中。我正在写一个测试方法来将字符串保存到一个文件中,然后加载它们。从字符串中读取字符串而不是字符
我在FileWriter
类中找到一个方法来编写一个字符串。我无法在FileReader
中找到任何方法读取字符串。有没有办法做到这一点?
最简单的方式来存储ArrayList
的文件是ObjectOutputStream
:
ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream(yourfile));
oos.writeObject(list);
要恢复使用ObjectInputStream
ArrayList中:
ObjectInputStream ois = new ObjectInputStream(new FileInputStream(yourfile));
ArrayList list = (ArrayList) ois.readObject();
的这些类的序列化格式确保您可以安全地存储字符串与任何类别的人物没有恐惧打破输出。基于行的存储(例如使用BufferedReader.readLine
时)不允许您恢复带有嵌入换行符的字符串。
啊啊这么容易,谢谢你看起来像我在吠叫错误的树。 -Ted –
我无法获取BYOUR示例代码的工作方式:上线oos.write(cGlobals.conFav);我得到一个错误提示“不适用于ArrayList类型” –
对不起,应该是'writeObject '和'readObject',而不是'write'和'read'。纠正。 – Joni
使用BufferedReader
与方法readLine()
你在ArrayList中存储哪些类型的对象,以及你想让你的文件表示看起来像什么? – hertzsprung