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文件,格式为文本文件,文件的内容的格式是“键=值”的格式,文本注释信息可以用"#"来注释. 这个类的几个常 ...
随机推荐
- mybatis基础CURD的学习
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "- ...
- 中国移动携手华为百度展示5G应用,实现8K视频传输
在今日举行的 2019 年百度云智峰会上,中国移动携手华为和百度,首次展示基于 SA 架构的 5G Vertical LAN (行业局域网)技术,承载 8K 实时会议系统,助力企业云办公.该技术可为合 ...
- leetcode406 ,131,1091 python
LeetCode 406. Queue Reconstruction by Height 解题报告题目描述Suppose you have a random list of people standi ...
- Innodb特性以及实现原理
Innodb五大特性 1.insert buffer2.double write3.自适应哈希索引4.异步io5.邻接页刷新 1.insert buffer(change buffer) 作用:将非聚 ...
- PAT 2019 秋
考试的还行.不过略微有点遗憾,但是没想到第一题会直接上排序和dfs,感觉这次的题目难度好像是倒着的一样.哈哈哈哈. 第一题实在是搞崩心态,这道题给我的感觉是,可以做,但事实上总是差点啥. 第二题,第三 ...
- vector删除指定元素
#pragma once #include "stdafx.h" #include<windows.h> #include <vector> #includ ...
- 牛客小白月赛18——Forsaken的三维数点
这个是一个简单题,不过因为想到比标程时间复杂度更低的方法就尝试了一下. 思路:虽然加点是三维数点,但是我们要求的是半径的大小,这样的话,就可以转变为一维的问题. 标程的解法是,用树状数组维护,然后二分 ...
- 循环(while,break,continue),转义字符
01. 程序的三大流程 在程序开发中,一共有三种流程方式: 顺序 -- 从上向下,顺序执行代码 分支 -- 根据条件判断,决定执行代码的 分支 循环 -- 让 特定代码 重复 执行 02. while ...
- maven中的groupId和artifactId 区分
原文地址:https://blog.csdn.net/snowin1994/article/details/53024871/ maven中的groupId和artifactId 区分 groupid ...
- OC中浮点数转整数的进一法和去尾法
//去尾法,最小去尾单位为0.000001 floorf(4.1)4 floorf(4.9)4 floorf(4.999999)4 floorf(4.9999999)5 //进一法,最小进位单位为0. ...