一、如何读取Properties文件
1、创建一个名为ReadingProperties的类

2、创建一个.propertise属性的文件,创建的方式参考“二”中步骤

3、写入如下代码

package introduction8;

import java.io.FileInputStream;
import java.nio.file.Path;
import java.util.Properties; //读取java中的属性文件,java中有一个写好的类,名叫Properties
/*Properties是一个配置文件,主要作用是通过修改配置文件可以方便的修改代码中的参数,
* 不用改.class文件就可以灵活的变更参数,.java文件编译为.class文件以后,无法通过
* 反编译找到原文件,那么,在java类中某个参数变更就很难灵活的实现参数的修改,当如果通过
* properties就可以实现修改,减少代码的维护成本,提高开发的效率。
*/
public class ReadingProperties { public static void main(String[] args) {
//后面的路径为创建的.properties属性的文件路径
String path = "C:\\Users\\Administrator\\eclipse-workspace\\JavaTutorial\\src\\introduction8\\test.propertise";
//创建一个Properties对象
Properties prop = new Properties();
//需要用到文件读取流这个类,创建一个文件读取流对象,用于读取本地文件中的字节数据
FileInputStream fs = new FileInputStream(path);
} }

在eclipse中下面的代码会出现异常,自检未通过:

鼠标移动到报错的代码上显示如下

此处直接抛出异常

4、终极代码:

package introduction8;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.nio.file.Path;
import java.util.Properties;
import java.util.jar.Attributes.Name; //读取java中的属性文件,java中有一个写好的类,名叫Properties
/*Properties是一个配置文件,主要作用是通过修改配置文件可以方便的修改代码中的参数,
* 不用改.class文件就可以灵活的变更参数,.java文件编译为.class文件以后,无法通过
* 反编译找到原文件,那么,在java类中某个参数变更就很难灵活的实现参数的修改,当如果通过
* properties就可以实现修改,减少代码的维护成本,提高开发的效率。
*/
public class ReadingProperties { public static void main(String[] args) throws IOException {
//后面的路径为创建的.properties属性的文件路径
String path = "C:\\Users\\Administrator\\eclipse-workspace\\JavaTutorial\\src\\introduction8\\test.propertise";
//创建一个Properties对象
Properties prop = new Properties();
//需要用到文件读取流这个类,创建一个文件读取流对象,用于读取本地文件中的字节数据
FileInputStream fs = new FileInputStream(path);
/*输入流中读取属性列表,读取InputStream文件,上面创建对象时将异常直接抛出,
因此此处也会报异常,直接抛出异常
*/
prop.load(fs);
//用Properties中的getProperty方法在file中用指定的键,搜索值
System.out.println(prop.getProperty("name"));
System.out.println(prop.getProperty("course")); } }

打印结果为,成功读取到属性文件中的值:

二、创建FIile文件

eclipse中创建一个文件:File---》NEW---》File---》在File name中输入文件名(文件名必须用.propertise,否则读取会出错)为后缀,本文演示中取名为test.propertise---》Finish。

三、如何定义FIile文件

使用键值对的形式

左边是键,右边是值,代码中如果想访问java这个值的话,直接访问course就可以了,我们也可以很方便的将java这个值改变,列如改为Python,那么代码在调用course这个键时,访问就会由java变为Python这个值,这样就能灵活的修改参数值了。

章节六、3-读取Properties属性文件的更多相关文章

  1. Java学习笔记——JDBC读取properties属性文件

    Java 中的 properties 文件是一种配置文件,主要用于表达配置信息,文件类型为*.properties,格式为文本文件. 文件的内容是格式是"键=值"(key-valu ...

  2. 读取properties属性文件

    1.通过类加载器加载 InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream("Chap ...

  3. 读取properties属性文件——国际化

    public class PropertiesInfo { /** * PropertiesInfo实例 */ private static PropertiesInfo pi = null; pri ...

  4. Java读取利用java.util类Properties读取resource下的properties属性文件

    说明:upload.properties属性文件在resources下 import java.io.IOException;import java.io.InputStream;import jav ...

  5. Code片段 : .properties属性文件操作工具类 & JSON工具类

    摘要: 原创出处:www.bysocket.com 泥瓦匠BYSocket 希望转载,保留摘要,谢谢! “贵专” — 泥瓦匠 一.java.util.Properties API & 案例 j ...

  6. 解决读写properties属性文件

    package com.kzkj.wx.utils; import java.io.BufferedReader; import java.io.File; import java.io.FileIn ...

  7. java:Properties属性文件概念

    java:Properties属性文件概念 在java之前的国际化程序中提出了一个属性文件的概念,属性文件的后缀是:*.properties,那么在java中提供了意个属性文件的专门操作类,Prope ...

  8. 使用JAVA读写Properties属性文件

     使用JAVA读写Properties属性文件 Properties属性文件在JAVA应用程序中是经常可以看得见的,也是特别重要的一类文件.它用来配置应用程序的一些信息,不过这些信息一般都是比较少的数 ...

  9. 集合类——Map集合、Properties属性文件操作

    1.Map集合 Collection集合的特点是每次进行单个对象的保存,若要对一对对象来进行保存就只能用Map集合来保存.即Map集合中一次可以保存两个对象,且这两个对象的关系是key = value ...

随机推荐

  1. JavaScript之Promise学习笔记

    一直想知道Promise到底是怎么实现的,网上一搜几十篇文章,看的一脸蒙蔽.最后算是找到几个讲的真心很详细明了的.看了一份源码看了很久很久……最后找大佬问了几处看不懂的地方,大佬只看了十几分钟就看懂了 ...

  2. C# Windows异步I/O操作

    1.简介 关于Windows的异步I/O操作,只要解决的是同步I/O操作的线程利用率问题,通过异步I/O Api来提升线程的利用率,提升系统的吞吐能力,将各种I/O操作交给线程池然后交由硬件设备执行, ...

  3. java--String equals方法

    本文版权归 远方的风lyh和博客园共有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作. public boolean equals(Object anObject) { //1.先和自身比较对 ...

  4. 【leet-code】542. 01 矩阵

    题目描述 给定一个由 0 和 1 组成的矩阵,找出每个元素到最近的 0 的距离. 两个相邻元素间的距离为 1 . 示例 1: 输入: 0 0 0 0 1 0 0 0 0 输出: 0 0 0 0 1 0 ...

  5. Spring Cloud Stream消费失败后的处理策略(一):自动重试

    之前写了几篇关于Spring Cloud Stream使用中的常见问题,比如: 如何处理消息重复消费 如何消费自己生产的消息 下面几天就集中来详细聊聊,当消息消费失败之后该如何处理的几种方式.不过不论 ...

  6. [Redux] redux的概述

    redux 的概述 随着 javascript 单页应用的不断发展,javascript 需要管理比以往都要多的状态,管理不断变化的 state 非常困难,数据流动不断变的模糊不可预测,代码的开发与维 ...

  7. Chrome插件开发,美化网页上的文件列表。chrome-extension,content-scripts

    趁着2018年还剩最后几天,发几篇博客,荒废太久了,惭愧. 最近也是需求驱动,研究了下Chrome插件开发.来看一下我们公司运维提供的日志查看页面 所有项目的日志都参杂在一起,每次去找都很痛苦.慢慢发 ...

  8. C#.NET和C++结构体Socket通信与数据转换

    最近在用C#做一个项目的时候,Socket发送消息的时候遇到了服务端需要接收C++结构体的二进制数据流,这个时候就需要用C#仿照C++的结 构体做出一个结构来,然后将其转换成二进制流进行发送,之后将响 ...

  9. PHP生成器细说

    之前写过关于生成器的文章,可能还不够详细,正好群里有朋友在讨论.觉得还是有必要再细说下,如果大家做过Python或者其他语言的,对于生成器应该不陌生.生成器是PHP 5.5.才引入的功能,也许大家觉得 ...

  10. Struts2_属性驱动

    在jsp页面提交到action中的表单元素在action中是以对象的形式存在的, action中的对象name必须与jsp页面中的表单元素name相同,struts框架自动为action的对象赋值. ...