配置文件类 Properties

Properties(配置文件类): 主要用于生产配置文件与读取配置文件的信息。

Properties属于集合类,继承于Hashtable。

Properties要注意的细节:
    1. 如果配置文件的信息一旦使用了中文,那么在使用store方法生成配置文件的时候只能使用字符流解决,如果使用字节流生成配置文件的话,默认使用的是iso8859-1码表进行编码存储,这时候会出现乱码。
    2. 如果Properties中的内容发生了变化,一定要重新使用Properties生成配置文件,否则配置文件信息不会发生变化。

常用方法:

1、构造方法:

Properties() 创建一个无默认值的空属性列表。

Properties(Properties defaults) 创建一个带有指定默认值的空属性列表。

2、常用方法

void load(InputStream inStream) 从输入流中读取属性列表(键和元素对)。

void load(Reader reader) 按简单的面向行的格式从输入字符流中读取属性列表(键和元素对)。

void  store(OutputStream out, String comments) 以适合使用 load(InputStream)
方法加载到 Properties 表中的格式,将此 Properties
表中的属性列表(键和元素对)写入输出流。

void  store(Writer writer, String comments) 以适合使用 load(Reader)
方法的格式,将此 Properties 表中的属性列表(键和元素对)写入输出字符。

Object setProperty(String key, String value) 调用
Hashtable 的方法 put

String getProperty(String key) 用指定的键在此属性列表中搜索属性。

实战:使用properties实现本软件只能 运行三次,超过了三次之后就提示购买正版并推出jvm。

代码示例如下

 1 import java.io.File;
 2 import java.io.FileReader;
 3 import java.io.FileWriter;
 4 import java.io.IOException;
 5 import java.util.Properties;
 6
 7
 8 public class DemoProperties {
 9
10     public static void main(String[] args) throws IOException {
11         File file = new File("E:\\nick.property");
12         if (!file.exists()) {
13             file.createNewFile();
14         }
15         Properties properties = new Properties();
16         properties.load(new FileReader(file));
17         int count = 0;
18         String value = properties.getProperty("登录次数");
19         if (value!=null ) {
20             count = Integer.parseInt(value);
21         }
22         count++;
23         if (count>=3) {
24             System.out.println("试用期已过,请购买正版。");
25             System.exit(0);
26         }
27
28         properties.setProperty("登录次数", count+"");
29         properties.store(new FileWriter(file), "登录次数"+count);
30     }
31
32 }

时间: 2024-10-16 23:14:39

配置文件类 Properties的相关文章

Java中读取配置文件(properties、xml)

1. 利用java.util提供的工具类Properties - 首先我这边有个file.properties文件 - 然后去读取这个文件 注意项目路径 //注意ProConfigUtil是当前类,也可用this替代 InputStream inputStream = PropConfigUtil.class.getClassLoader() .getResourceAsStream("config/file.properties"); Properties pro = new Pro

log4CXX第二篇---配置文件(properties文件)详解

一.Log4j简介 Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局).这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综合使用这三个组件可以轻松地记录信息的类型和级别,并可以在运行时控制日志输出的样式和位置. 1.Loggers Loggers组件在此系统中被分为六个级别:TRACE < DEBUG < INFO < WARN < ERROR < FATAL.这六个级别是有顺序的,分别用来指定这条日志

Mybatis(1、核心配置文件、Properties、Settings、typeAliases...)

Mybatis(1.核心配置文件.Properties.Settings.typeAliases...) 2017年04月23日 22:52:36 阅读数:1527 此章主要介绍sqlMapConfiguragion.xml的核心配置属性. mybatis.mappers.Environments.ObjectFactory.typeHandlers.Properties.Settings.typeAliases.Plugins 原链接为:https://blog.csdn.net/www105

MyBatis配置文件(一)――properties属性

MyBatis配置文件中有很多配置项,这些配置项分别代表什么,有什么作用,需要理一下了.先通过下面这个例子来看都有哪些配置项 1 <?xml version="1.0" encoding="UTF-8"?> 2 <!DOCTYPE configuration 3 PUBLIC "-//mybatis.org//DTD Config 3.0//EN" 4 "http://mybatis.org/dtd/mybatis-3

基于spring-boot的测试桩设计-添加配置文件(properties)

编写测试时,有些内容可以放到配置文件中. 第一步:新增配置文件 conf.properties 第二步:编写配置文件类 MockConf 1 package mock.mockdemo.conf; 2 3 import lombok.Data; 4 import org.springframework.beans.factory.annotation.Value; 5 import org.springframework.context.annotation.PropertySource; 6

细数Java项目中用过的配置文件(properties篇)

灵魂拷问:在不重启服务的前提下,如何让配置修改生效的呢?有什么奇技淫巧吗? 灵魂拷问:在 Java 项目中,总能看到以 .properties 为后缀的文件踪影,这类配置文件是怎么加载的呢? 项目研发过程中,总会遇到一些经常改变的参数,比如要连接的数据库的连接地址.名称.用户名.密码:再比如访问三方服务的 URL 等等.考虑到程序的通用性,这些参数往往不能直接写死在程序里,通常借助配置文件来优雅处理. 在 Java 项目中,properties 文件当属使用较简单一类,不过虽然简单,还是要好好说

Java属性类:Properties的常用方法

Properties类本身是Hashtable类的子类,也是按照key-value的形式存放数据的. 设置和取得属性: public class PropertiesDemo01{ public static void main(String args[]){ Properties pro = new Properties() ; // 创建Properties对象 pro.setProperty("BJ","BeiJing") ; // 设置属性 pro.setP

freemaker中配置文件freemarker.properties详解

classic_compatible=true              ##如果变量为null,转化为空字符串,比如做比较的时候按照空字符做比较whitespace_stripping=true          ##去掉多余的空格,非常有用##模版更新事件,设置为1秒,正式环境设置为3600秒#template_update_delay=3600template_update_delay=1        ##模版更新时间,这里配置是1秒更新一次,正式环境,模版不会改变,可以将这个值设很大,

Java读写资源文件类Properties

Java中读写资源文件最重要的类是Properties 1) 资源文件要求如下: 1.properties文件是一个文本文件 2.properties文件的语法有两种,一种是注释,一种属性配置. 注    释:前面加上#号 属性配置:以“键=值”的方式书写一个属性的配置信息. 3.properties文件的一个属性配置信息值可以换行,但键不可以换行.值换行用“\”表示. 4.properties的属性配置键值前后的空格在解析时候会被忽略. 5.properties文件可以只有键而没有值.也可以仅