Properties类对于文件的读取和写入
程序员文章站
2022-04-09 08:32:45
Properties类表示一个持久的属性集。Properties可保存在流中或从流中加载。Properties对象只能加载以 .Properties 为后缀的文件(文件我创建在src下)。 开始时文件中没有内容,我运行的顺序是先写入在进行读取 一、Properties读取文件内容 我们要做的第一步就 ......
properties类表示一个持久的属性集。properties可保存在流中或从流中加载。properties对象只能加载以 .properties 为后缀的文件(文件我创建在src下)。
开始时文件中没有内容,我运行的顺序是先写入在进行读取
一、properties读取文件内容
我们要做的第一步就是要将文件读取properties类对象中,由于load 有一个参数是inputstream,所以我们可以用inputstream的子类fileinputstream降属性文件读取到properties对象中,知道db.properties的路径,我们就用fileinputstream(string name)构造函数。
public static void input(){ //创建properties对象 properties properties = new properties(); //获取输入流对象 try { //方法一:必须给予一个文件的绝对路径 fileinputstream inputstream = new fileinputstream(new file("d:\\baidunetdiskdownload\\eclipse-jee-kepler-r-win64(1)\\workspace2\\properties\\src\\db.properties")); //properties加载数据流对象 properties.load(inputstream); //获取数据
system.out.println("username: "+properties.get("username"));
system.out.println("password: "+properties.get("passwrod"));
} catch (exception e) { // todo auto-generated catch block e.printstacktrace(); } // try { // //方法二:使用类加载器可以直接获取类(src)路径下的文件,不必是文件的绝对路径 // inputstream inputstream = test.class.getclassloader().getresourceasstream("db.properties"); // properties.load(inputstream); // //获取数据 // system.out.println("username: "+properties.get("username"))
// system.out.println("password: "+properties.get("passwrod"));
// } catch (exception e) { // // todo auto-generated catch block // e.printstacktrace(); // } }
二、properties写入文件内容
最开始写的时候,我只是用properties类进行文件的读取,并没有进行过文件内容的写入,开始时遇到了一个问题(开始时
properties.setproperty("username", "aaa")这个赋值的操作我是写在流之后的),导致想写入的内容写不进去。最后发现需要将它写在流前面(别问为什么,用法是这样的,哈哈)。
public static void output(){ try { properties properties = new properties();
//如果we年中存在了相同的key,这个操作代表是给这个key赋新的值,如果不存在,代表是写入新的键值对 properties.setproperty("username", "aaa"); properties.setproperty("passwrod", "123456"); fileoutputstream outputstream = new fileoutputstream(new file("d:\\baidunetdiskdownload\\eclipse-jee-kepler-r-win64(1)\\workspace2\\properties\\src\\db.properties")); properties.store(outputstream, null); } catch (exception e) { // todo auto-generated catch block e.printstacktrace(); } }
三、 运行结果:
上一篇: PHP 伪静态隐藏传递参数名的四种方法
下一篇: 打印所有的水仙花数
推荐阅读
-
php实现读取和写入tab分割的文件
-
C#_Excel数据读取与写入_自定义解析封装类_支持设置标题行位置&使用excel表达式收集数据&单元格映射&标题映射&模板文件的参数数据替换(第二版-增加深度读取和更新功能)
-
在Python程序中进行文件读取和写入操作的教程
-
Python中文件的读取和写入操作
-
openCV学习笔记(十九) —— XML和YAML文件的写入和读取
-
加载和写入properties属性文件的工具类
-
加载和写入properties属性文件的工具类
-
Objc运行时读取和写入plist文件遇到的问题
-
Properties类对于文件的读取和写入
-
jsp+java类+servlet实现文件读取、写入的功能(一)