如何将ArrayList存储的对象使用io流输出到txt文件中
时间: 2024-02-10 18:10:56 浏览: 68
如果要将ArrayList存储的对象输出到txt文件中,需要将每个对象转换成字符串格式再输出。可以使用Java中的ObjectOutputStream和FileOutputStream来实现将ArrayList对象集合输出到txt文件中。具体步骤如下:
1. 创建一个FileOutputStream对象,指定要输出的txt文件路径,例如:FileOutputStream fos = new FileOutputStream("output.txt");
2. 创建一个ObjectOutputStream对象,将FileOutputStream对象传入其中,例如:ObjectOutputStream oos = new ObjectOutputStream(fos);
3. 将ArrayList对象集合写入ObjectOutputStream对象中,例如:oos.writeObject(list);
4. 最后记得关闭ObjectOutputStream和FileOutputStream对象,释放资源,例如:oos.close(); fos.close();。
完整代码示例:
```
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectOutputStream;
import java.util.ArrayList;
public class ArrayListToFile {
public static void main(String[] args) {
ArrayList<Person> list = new ArrayList<Person>();
list.add(new Person("Tom", 18));
list.add(new Person("Jerry", 20));
list.add(new Person("Alice", 22));
try {
FileOutputStream fos = new FileOutputStream("output.txt");
ObjectOutputStream oos = new ObjectOutputStream(fos);
oos.writeObject(list);
oos.close();
fos.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
class Person implements Serializable {
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
// 省略getter和setter方法
public String toString() {
return "Person [name=" + name + ", age=" + age + "]";
}
}
```
注意:要将存储的对象实现Serializable接口,以便序列化和反序列化。此外,如果存储的对象是自定义的类,需要重写toString方法,将其转换成字符串格式。
阅读全文