java将数组列表保存到文本文件
我花了一整天在这上面,需要一些建议
我正在尝试将数组列表的内容保存到文本文件中
我已经让安卓将数组列表内容保存到内部*。但是,在数组列表中输入“Test one”和“Test Two”后,单击一个按钮将当前内容保存到文本文件中。我得到以下信息:
�� sr java.util.ArrayListx����a� I sizexp w t Test Onet Test Twox
还给出了一个错误,即:
"File was loaded in the wrong encoding:'UTF-8'
System.out.print
给出了以下结果:
"I/System.out: [Test One, Test Two]"
这对于显示数组列表的内容是准确的
使用的代码:
public void savingfile() {
read = (Button)findViewById(R.id.read);
read.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
try {
outputStream = openFileOutput(anxfile, Context.MODE_PRIVATE);
ObjectOutputStream out = new ObjectOutputStream(outputStream);
out.writeObject(arrayList);
System.out.println(arrayList);
outputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
}
});
}
非常感谢,里昂 另外,我尝试了很多youtube教程/Stackoverflow答案来解决这个问题,但仍然存在同样的问题
# 1 楼答案
列表包含字符串,对吗
如果是这样,则不要将对象写入流:
out.writeObject(arrayList);
您可能希望首先从列表中找出字符串并将其写入: