Java 使用对象输出流将用户信息写入文件
下面是添加一个用户信息到文件的 Java 代码,并且对每一行代码进行了解释:
import java.io.*;
public class AddUserInfoToFile {
public static void main(String[] args) {
// 创建一个用户对象
User user = new User('张三', '123456', 20);
try {
// 创建一个文件输出流,将数据写入文件中
FileOutputStream fos = new FileOutputStream('user.txt', true);
// 创建一个对象输出流,用于将对象序列化为字节流并写入文件中
ObjectOutputStream oos = new ObjectOutputStream(fos);
// 将用户对象写入文件中
oos.writeObject(user);
// 关闭输出流
oos.close();
fos.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
// 用户类
class User implements Serializable {
private String name;
private String password;
private int age;
public User(String name, String password, int age) {
this.name = name;
this.password = password;
this.age = age;
}
// 省略getter和setter方法
}
解释:
import java.io.*;:导入 Java 的 IO 库,用于进行文件读写操作。public class AddUserInfoToFile {:定义一个公共类,类名为 AddUserInfoToFile。public static void main(String[] args) {:定义一个公共静态方法,方法名为 main,参数为字符串数组 args。User user = new User('张三', '123456', 20);:创建一个名为 user 的用户对象,用户名为张三,密码为 123456,年龄为 20。try {:使用 try-catch 语句处理可能出现的异常。FileOutputStream fos = new FileOutputStream('user.txt', true);:创建一个文件输出流,将数据写入名为 user.txt 的文件中,第二个参数为 true 表示追加写入。ObjectOutputStream oos = new ObjectOutputStream(fos);:创建一个对象输出流,用于将对象序列化为字节流并写入文件中。oos.writeObject(user);:将用户对象写入文件中。oos.close();:关闭输出流。fos.close();:关闭输出流。} catch (IOException e) {:捕获 IOException 异常。e.printStackTrace();:打印异常信息。}:try-catch 语句块结束。class User implements Serializable {:定义一个内部类 User,实现序列化接口 Serializable。private String name;:定义一个私有字符串属性 name。private String password;:定义一个私有字符串属性 password。private int age;:定义一个私有整型属性 age。public User(String name, String password, int age) {:定义一个公共构造方法,参数为用户名、密码和年龄。this.name = name;:将传入的用户名赋值给 name 属性。this.password = password;:将传入的密码赋值给 password 属性。this.age = age;:将传入的年龄赋值给 age 属性。}:构造方法结束。}:内部类 User 结束。
原文地址: https://www.cveoy.top/t/topic/ofFp 著作权归作者所有。请勿转载和采集!