Properties:可以持久化的映射,规定键和值的类型是String。

Properties对象必须放到.properties文件中,其中properties文件默认为西欧编码,也因此不存储中文。

1.写properties文件

 import java.io.FileOutputStream;
import java.util.Properties; public class PropertiesDemo {
public static void main(String[] args) throws Exception {
// 创建一个properties对象
Properties prop = new Properties();
// 添加键值对:键和值的类型都是String
prop.setProperty("name", "xs");
prop.setProperty("id", "666666");
prop.setProperty("gender", "f");
// 持久化
// Properties对象在序列化的时候必须放到properties文件中
// 第二个参数表示向properties文件中添加注释描述这个properties文件的作用
prop.store(new FileOutputStream("student.properties"), "this is a student");
}
}

student.properties:

2.读properties文件

 import java.io.FileInputStream;
import java.util.Properties;
public class PropertiesDemo2 {
public static void main(String[] args) throws Exception {
Properties prop = new Properties();
// 读取properties文件
prop.load(new FileInputStream("p.properties"));
// 根据键获取值:如果键不存在,则返回一个null
// 也可以指定默认值(如果没有对应的键,则返回默认值)
System.out.println(prop.getProperty("id"));
System.out.println(prop.getProperty("x"));
System.out.println(prop.getProperty("xxx", "x"));
}
}

结果:

3.properties的用处

path=D:\\a.txt
----->进行更改--->
path=D:\\b.txt

config.properties

 import java.io.FileInputStream;
import java.util.Properties; public class PropertiesDemo3 {
public static void main(String[] args) throws Exception {
// 创建properties对象
Properties prop = new Properties();
while (true) {
// 加载properties文件
prop.load(new FileInputStream("config.properties"));
// 读取文件
FileInputStream fin = new FileInputStream(prop.getProperty("path"));
byte[] bs = new byte[10];
int len = -1;
while ((len = fin.read(bs)) != -1) {
System.out.println(new String(bs, 0, len));
}
fin.close();
Thread.sleep(3000);
}
}
}

结果:

【java学习笔记】Properties的更多相关文章

  1. Java学习笔记31(IO:Properties类)

    Properties类,表示一个持久的j集,可以存在流中,或者从流中加载 是Hashtable的子类 map集合的方法都能用 用途之一:在开发项目中,我们最后交给客户的是一个编译过的class文件,客 ...

  2. 《Java学习笔记(第8版)》学习指导

    <Java学习笔记(第8版)>学习指导 目录 图书简况 学习指导 第一章 Java平台概论 第二章 从JDK到IDE 第三章 基础语法 第四章 认识对象 第五章 对象封装 第六章 继承与多 ...

  3. 20145330第十周《Java学习笔记》

    20145330第十周<Java学习笔记> 网络编程 网络编程就是在两个或两个以上的设备(例如计算机)之间传输数据.程序员所作的事情就是把数据发送到指定的位置,或者接收到指定的数据,这个就 ...

  4. 20145330第八周《Java学习笔记》

    20145330第八周<Java学习笔记> 第十五章 通用API 通用API 日志:日志对信息安全意义重大,审计.取证.入侵检验等都会用到日志信息 日志API Logger:注意无法使用构 ...

  5. 20145330第五周《Java学习笔记》

    20145330第五周<Java学习笔记> 这一周又是紧张的一周. 语法与继承架构 Java中所有错误都会打包为对象可以尝试try.catch代表错误的对象后做一些处理. 使用try.ca ...

  6. Java学习笔记4

    Java学习笔记4 1. JDK.JRE和JVM分别是什么,区别是什么? 答: ①.JDK 是整个Java的核心,包括了Java运行环境.Java工具和Java基础类库. ②.JRE(Java Run ...

  7. java学习笔记12--国际化

    java学习笔记12--国际化 国际化的操作就是指一个程序可以同时适应多门语言,即:如果现在程序者是中国人,则会以中文为显示文字,如果现在程序的使用者是英国人,则会以英语为显示的文字,也就是说可以通过 ...

  8. Java学习笔记之log4j与commons-logging<转>

    Java学习笔记之log4j与commons-logging<转> (2011-02-16 11:10:46) 转载▼ 标签: 杂谈 分类: 技术学习之其他 Logger来自log4j自己 ...

  9. 0037 Java学习笔记-多线程-同步代码块、同步方法、同步锁

    什么是同步 在上一篇0036 Java学习笔记-多线程-创建线程的三种方式示例代码中,实现Runnable创建多条线程,输出中的结果中会有错误,比如一张票卖了两次,有的票没卖的情况,因为线程对象被多条 ...

  10. 0035 Java学习笔记-注解

    什么是注解 注解可以看作类的第6大要素(成员变量.构造器.方法.代码块.内部类) 注解有点像修饰符,可以修饰一些程序要素:类.接口.变量.方法.局部变量等等 注解要和对应的配套工具(APT:Annot ...

随机推荐

  1. Java项目专栏之数据库建表

    Java项目专栏之数据库建表 数据库建表前期准备 1. 安装mysql:数据库语言,语法和sql server差不太多,如果习惯于sql server可以不用mysql. 2. 安装navicat:可 ...

  2. 【转】sed 高级用法

    首先,应该明白模式空间的定义.模式空间就是读入行所在的缓存,sed对文本行进行的处理都是在这个缓存中进行的.这对接下来的学习是有帮助的. 在正常情况下,sed将待处理的行读入模式空间,脚本中的命令就一 ...

  3. smokeping一键安装脚本

    #!/bin/bash #Date 2017/11/11 #mail caoyf1992@163.com [ $(id -u) != "0" ] && echo & ...

  4. 梅安森元图地图开放平台、专业GIS地图平台

    元图地图开放平台:http://map.cmetamap.com/?from=groupmessage 梅安森元图地图开放平台: 自主知识产权,专业GIS地图平台,用简单语言即可轻松操作复杂的互联网地 ...

  5. BZOJ 2034: [2009国家集训队]最大收益 [贪心优化 Hungary]

    2034: [2009国家集训队]最大收益 题意:\(n \le 5000\)个区间\(l,r\le 10^8\),每个区间可以选一个点得到val[i]的价值,每个点最多选1次,求最大价值 线段树优化 ...

  6. BZOJ 3731 3731: Gty的超级妹子树 [树上size分块 !]

    传送门 题意:一棵树,询问子树中权值大于k的节点个数,修改点权值,插入新点,断开边:强制在线 该死该死该死!!!!!! MD我想早睡觉你知不知道 该死该死沙比提 断开边只会影响一个块,重构这个块就行了 ...

  7. Codewars练习

    记录一下比较聪明的codewars练习题解决方案,不得转载. 2017/12/19 You will be given a string and you task is to check if it ...

  8. struct stat结构体简介

    在使用这个结构体和方法时,需要引入: <sys/types.h> <sys/stat.h> struct stat这个结构体是用来描述一个linux系统文件系统中的文件属性的结 ...

  9. arm-点亮led灯

    点亮指路灯:学习四环节:led原理图分析,芯片手册导读,思维导图设计,为什么要使用led:通常led是作为程序调试的重要手段.led原理图:led实质为发光二极管,当其两端电压一定时,即处于导通状态. ...

  10. 12小时格式Xcode的-在一个“TimePicker”24 NSDate的设置

    我正在使用的NSDate对象,和好了,我的iPhone与24小时格式,所以当我在测试我的应用程序,一切正常,但是,我的一个朋友试图在他的iPhone上的应用程序 CodeGo.net,但12小时格式, ...