章节六、3-读取Properties属性文件
一、如何读取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属性文件的更多相关文章
- Java学习笔记——JDBC读取properties属性文件
Java 中的 properties 文件是一种配置文件,主要用于表达配置信息,文件类型为*.properties,格式为文本文件. 文件的内容是格式是"键=值"(key-valu ...
- 读取properties属性文件
1.通过类加载器加载 InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream("Chap ...
- 读取properties属性文件——国际化
public class PropertiesInfo { /** * PropertiesInfo实例 */ private static PropertiesInfo pi = null; pri ...
- Java读取利用java.util类Properties读取resource下的properties属性文件
说明:upload.properties属性文件在resources下 import java.io.IOException;import java.io.InputStream;import jav ...
- Code片段 : .properties属性文件操作工具类 & JSON工具类
摘要: 原创出处:www.bysocket.com 泥瓦匠BYSocket 希望转载,保留摘要,谢谢! “贵专” — 泥瓦匠 一.java.util.Properties API & 案例 j ...
- 解决读写properties属性文件
package com.kzkj.wx.utils; import java.io.BufferedReader; import java.io.File; import java.io.FileIn ...
- java:Properties属性文件概念
java:Properties属性文件概念 在java之前的国际化程序中提出了一个属性文件的概念,属性文件的后缀是:*.properties,那么在java中提供了意个属性文件的专门操作类,Prope ...
- 使用JAVA读写Properties属性文件
使用JAVA读写Properties属性文件 Properties属性文件在JAVA应用程序中是经常可以看得见的,也是特别重要的一类文件.它用来配置应用程序的一些信息,不过这些信息一般都是比较少的数 ...
- 集合类——Map集合、Properties属性文件操作
1.Map集合 Collection集合的特点是每次进行单个对象的保存,若要对一对对象来进行保存就只能用Map集合来保存.即Map集合中一次可以保存两个对象,且这两个对象的关系是key = value ...
随机推荐
- 解决ionic <ion-nav> rootParams获取不到参数
在使用ion-nav 标签的时候 设置的页面 无法拿到传递的参数 import { Component } from '@angular/core'; import { GettingStartedP ...
- Python+selenium 2【测试报告】
HTML报告 http://tungwaiyip.info/software/HTMLTestRunner.html 下载地址 这个扩展非常简单,只有一个HTMLTestRunner.py文件,选 ...
- 微信小程序 WXS实现json数据需要做过滤转义(filter)
前言 最近有在做小程序开发,在开发的过程中碰到一点小问题,描述一下先. 本人在职的公司对于后台获取的 json 数据需要做过滤转义的很多,不同的状态码会对应不同的文字,但是在微信小程序中又没有类似 v ...
- windows关闭占用某端口的进程
第一步:获取该端口进程PID 第二步:获取该PID进程映像名称 第三部:关闭进程
- AspNetPager分页控件的使用方法
1. 首先将AspNetPager.dll复制于应用程序下的bin目录,打开解决方案,引入dll文件 (通过NuGet获取) 2. 在工具栏中添加控件,这样可以支持拖拽使用 3.页面拖入分页控件,设置 ...
- spring boot多数据源配置(mysql,redis,mongodb)实战
使用Spring Boot Starter提升效率 虽然不同的starter实现起来各有差异,但是他们基本上都会使用到两个相同的内容:ConfigurationProperties和AutoConfi ...
- 基于SpringMVC+Spring+MyBatis实现秒杀系统【客户端交互】
前言 该篇主要实现客户端和服务的交互.在第一篇概况里我已经贴出了业务场景的交互图片. 客户端交互主要放在seckill.js里来实现.页面展现基于jsp+jstl来实现. 准备工作 1.配置web.x ...
- NSOperation讲解
本篇博客转自https://www.jianshu.com/p/4b1d77054b35 1. NSOperation.NSOperationQueue 简介 NSOperation.NSOperat ...
- petapoco 实体中字段去掉关联(类似于EF中的NotMap)
怎么才能让不是数据库表中的字段放在实体中而不影响正常的插入和更新呢? 找到 PetaPoco.cs 文件,打开之后,搜索插入方法(Insert),然后继续找到下一层方法 就能看到如下代码: 看到这个注 ...
- .NET面试题01-值类型与引用类型
常见面试题目: 1. 值类型和引用类型的区别? 2. 结构和类的区别? 3. delegate是引用类型还是值类型?enum.int[]和string呢? 4. 堆和栈的区别? 5. 什么情况下会在堆 ...