这是我的代码
try {
fstream = new FileWriter("/Applications/AirDrop/contacts.txt");
BufferedWriter out = new BufferedWriter(fstream);
out.write(stringToInsert);
out.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)
现在我每次尝试调用此方法时(这是代码在一个名为writeToFile的方法中,带有字符串参数)的字符串
Joa*_*uer 11
您需要使用以下两参数构造函数FileWriter:
fstream = new FileWriter("/Applications/AirDrop/contacts.txt", true);
Run Code Online (Sandbox Code Playgroud)
更好的是:根本不使用FileWriter,因为它总是使用平台默认编码,这通常不是一个好主意!相反,你应该明确指定使用哪种编码(如果你不知道还有什么选择,UTF-8通常是一个很好的默认值):
fstream = new OutputStreamWriter(new FileOutputStream("/Applications/AirDrop/contacts.txt", true), "UTF-8");
Run Code Online (Sandbox Code Playgroud)
另一个提示:这是很可能的是不断地打开和关闭文件是不是最好的主意:你平时应打开文件一次写,写你需要写它的一切,然后将其关闭.
| 归档时间: |
|
| 查看次数: |
115 次 |
| 最近记录: |