Properties类(一)

- package apistudy;
- import java.io.File;
- import java.io.FileInputStream;
- import java.io.FileOutputStream;
- import java.io.IOException;
- import java.io.InputStream;
- import java.io.OutputStream;
- import java.io.UnsupportedEncodingException;
- import java.util.Properties;
- public class PropertiesTest
- {
- public static void main(String[] args)
- {
- String readfile = "d:" + File.separator + "readfile.properties";
- String writefile = "d:" + File.separator + "writefile.properties";
- String readxmlfile = "d:" + File.separator + "readxmlfile.xml";
- String writexmlfile = "d:" + File.separator + "writexmlfile.xml";
- String readtxtfile = "d:" + File.separator + "readtxtfile.txt";
- String writetxtfile = "d:" + File.separator + "writetxtfile.txt";
- readPropertiesFile(readfile); //读取properties文件
- writePropertiesFile(writefile); //写properties文件
- readPropertiesFileFromXML(readxmlfile); //读取XML文件
- writePropertiesFileToXML(writexmlfile); //写XML文件
- readPropertiesFile(readtxtfile); //读取txt文件
- writePropertiesFile(writetxtfile); //写txt文件
- }
- //读取资源文件,并处理中文乱码
- public static void readPropertiesFile(String filename)
- {
- Properties properties = new Properties();
- try
- {
- InputStream inputStream = new FileInputStream(filename);
- properties.load(inputStream);
- inputStream.close(); //关闭流
- }
- catch (IOException e)
- {
- e.printStackTrace();
- }
- String username = properties.getProperty("username");
- String passsword = properties.getProperty("password");
- String chinese = properties.getProperty("chinese");
- try
- {
- chinese = new String(chinese.getBytes("ISO-8859-1"), "GBK"); // 处理中文乱码
- }
- catch (UnsupportedEncodingException e)
- {
- e.printStackTrace();
- }
- System.out.println(username);
- System.out.println(passsword);
- System.out.println(chinese);
- }
- //读取XML文件,并处理中文乱码
- public static void readPropertiesFileFromXML(String filename)
- {
- Properties properties = new Properties();
- try
- {
- InputStream inputStream = new FileInputStream(filename);
- properties.loadFromXML(inputStream);
- inputStream.close();
- }
- catch (IOException e)
- {
- e.printStackTrace();
- }
- String username = properties.getProperty("username");
- String passsword = properties.getProperty("password");
- String chinese = properties.getProperty("chinese"); //XML中的中文不用处理乱码,正常显示
- System.out.println(username);
- System.out.println(passsword);
- System.out.println(chinese);
- }
- //写资源文件,含中文
- public static void writePropertiesFile(String filename)
- {
- Properties properties = new Properties();
- try
- {
- OutputStream outputStream = new FileOutputStream(filename);
- properties.setProperty("username", "myname");
- properties.setProperty("password", "mypassword");
- properties.setProperty("chinese", "中文");
- properties.store(outputStream, "author: shixing_11@sina.com");
- outputStream.close();
- }
- catch (IOException e)
- {
- e.printStackTrace();
- }
- }
- //写资源文件到XML文件,含中文
- public static void writePropertiesFileToXML(String filename)
- {
- Properties properties = new Properties();
- try
- {
- OutputStream outputStream = new FileOutputStream(filename);
- properties.setProperty("username", "myname");
- properties.setProperty("password", "mypassword");
- properties.setProperty("chinese", "中文");
- properties.storeToXML(outputStream, "author: shixing_11@sina.com");
- outputStream.close();
- }
- catch (IOException e)
- {
- e.printStackTrace();
- }
- }
- }
username=mynamepassword=mypasswordchinese=中文
#author: shixing_11@sina.com#Fri May 28 22:19:44 CST 2010password=mypasswordchinese=/u4E2D/u6587username=myname
3. readxmlfile.xml
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd"><properties><entry key="password">mypassword</entry><entry key="chinese">中文</entry><entry key="username">myname</entry></properties>
<?xml version="1.0" encoding="UTF-8" standalone="no"?><!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd"><properties><comment>author: shixing_11@sina.com</comment><entry key="password">mypassword</entry><entry key="chinese">中文</entry><entry key="username">myname</entry></properties>
#author: shixing_11@sina.com#Fri May 28 22:25:16 CST 2010password=mypasswordchinese=/u4E2D/u6587username=myname
Properties类(一)的更多相关文章
- Java中Properties类知识的总结
一.Properties类与配置文件 注意:是一个Map集合,该集合中的键值对都是字符串.该集合通常用于对键值对形式的配置文件进行操作. 配置文件:将软件中可变的部分数据可以定义到一个文件中,方便以后 ...
- java编程中Properties类的具体作用和使用
如果不熟悉 java.util.Properties类,那么现在告诉您它是用来在一个文件中存储键-值对的,其中键和值是用等号分隔的.(如清单 1 所示).最近更新的java.util.Properti ...
- 【JAVA Properties类概述】
一.概述. 之前说过,该对象是和IO流相结合的技术,所以和IO流结合在一起来讲比较合适. public class Propertiesextends Hashtable<Object,Obje ...
- java 21 - 14 Properties类
类 Properties Properties 类表示了一个持久的属性集.Properties 可保存在流中或从流中加载.属性列表中每个键及其对应值都是一个字符串. 注意:Properties是Has ...
- Java中Properties类的操作
知识学而不用,就等于没用,到真正用到的时候还得重新再学.最近在看几款开源模拟器的源码,里面涉及到了很多关于Properties类的引用,由于Java已经好久没用了,而这些模拟器大多用Java来写,外加 ...
- Properties类一些常用的用法
直接上代码: package test.properties; import java.io.File; import java.io.FileInputStream; import java.io. ...
- Java常用类之Properties类
1.特性 Properties类表示了一个持久的属性集,可保存在流中或从流中加载,实现内存和文件的交互.Properties继承了Hashtable<Object,Object>类,可以使 ...
- Java的Properties类和读取.properties文件
一..properties文件的作用 Properties属性文件在JAVA应用程序中是经常可以看得见的,也是特别重要的一类文件.它用来配置应用程序的一些信息,不过这些信息一般都是比较少的数据,没有必 ...
- Java中Properties类的操作配置文件
知识学而不用,就等于没用,到真正用到的时 候还得重新再学.最近在看几款开源模拟器的源码,里面涉及到了很多关于Properties类的引用,由于Java已经好久没用了,而这些模拟器大多用 Java来写, ...
- Properties类与读取properties文件
Properties类 在Java中,其配置文件常为.properties文件,格式为文本文件,文件的内容的格式是“键=值”的格式,文本注释信息可以用"#"来注释. 这个类的几个常 ...
随机推荐
- MFC 选择文件夹
WCHAR szPath[_MAX_PATH] = {}; BROWSEINFO bi; //指定父窗口,在对话框显示期间,父窗口将被禁用 bi.hwndOwner = this->GetSaf ...
- Linux系统学习笔记
6.启动python cd /root/yq/v4_1_6309a_btc_nw_cq nohup python3 -u v4_1_6309a_btc_nw_cq.py >> 6309a_ ...
- python 的第一个界面程序(PyQt5)
这里用到了python的一个第三qt库PyQt5,API与qt几乎完全一样(科学严谨下...) from PyQt5.QtWidgets import QApplication, QMainWindo ...
- SAP_ABAP常用事务代码
ST05: 性能跟踪(Performance Trace) SE30/SAT: ABAP对象性能分析 ST12: 单个对象性能分析(Single transaction analysis)
- Filter过滤器技术详解
前言 有这样一个常见的开发场景,我们编写一套系统,或者分析一套系统如何实现的过程中,我们肯定会发现这套系统的拦截机制.比如说京东或者淘宝之类的,存在这种拦截机制,这套拦截机制能够过滤掉哪些错误的登录注 ...
- nodejs(8) 使用ejs渲染动态页面
使用ejs渲染动态页面 步骤: 安装 ejs 模板引擎npm i ejs -S 使用 app.set() 配置默认的模板引擎 app.set('view engine', 'ejs') 使用 app. ...
- (转)mysql语句
一.基础 1.说明:创建数据库 CREATE DATABASE database-name 2.说明:删除数据库 drop database dbname 3.说明:备份sql server --- ...
- 吴裕雄--天生自然MySQL学习笔记:MySQL 连接
使用mysql二进制方式连接 您可以使用MySQL二进制方式进入到mysql命令提示符下来连接MySQL数据库. 实例 以下是从命令行中连接mysql服务器的简单实例: [root@host]# my ...
- SQL基础教程(第2版)第8章 SQL高级处理:8-1 窗口函数
第8章 SQL高级处理:8-1 窗口函数 ● 窗口函数可以进行排序.生成序列号等一般的聚合函数无法实现的高级操作.● 理解PARTITION BY和ORDER BY这两个关键字的含义十分重要. ■什么 ...
- UML-包的设计
1.准则 1).准则1 包在水平和垂直划分上,要功能性内聚.即:同类关联功能的模块化,将参与共同目的.服务.协作.策略和功能的强相关类型(类或者接口)组织在一起. 如:在NextGen项目中,Pric ...