练习题09-Proerties、IO
案例需求:
在Properties文件中手动写上姓名和年龄,读取到集合中,将该数据封装成学生对象,写到本地文件
实现步骤:
1.创建Properties集合,将本地文件中的数据加载到集合中
2.获取集合中的键值对数据,封装到学生对象中
3.创建序列化流对象,将学生对象序列化到本地文件中
package com.xxx; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.util.Properties; public class PropertiesUtils { private Properties pro; private static PropertiesUtils propertiesUtils; private PropertiesUtils() { try { pro = new Properties(); //加载配置文件的信息到Properties对象中 InputStream is = new FileInputStream("student.properties"); //InputStreamReader isr = new InputStreamReader(new FileInputStream("student.properties"), "GBK"); pro.load(is); } catch (IOException e) { e.printStackTrace(); } } public static PropertiesUtils getInstance() { if (propertiesUtils == null) { propertiesUtils = new PropertiesUtils(); } return propertiesUtils; } //定义一个方法根据键获取值 public String getValue(String key) { return pro.getProperty(key); } } package com.xxx; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.ObjectOutputStream; public class TestPropertiesUtils { public static void main(String[] args) throws IOException { String name = PropertiesUtils.getInstance().getValue("name"); String age = PropertiesUtils.getInstance().getValue("age"); //实例化学生对象 Student stu = new Student(name,Integer.parseInt(age)); //实例化对象流 ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("stu02.txt")); oos.writeObject(stu); oos.close(); } }
本文作者:Ritchie里其
本文链接:https://www.cnblogs.com/wang-zeyu/p/16819955.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步