import java.io.IOException;
import java.io.InputStream;
import java.util.*;
/**
* Title:
* Packet:PACKAGE_NAME
* Description:
* Author:LG
* Create Date: 2020/4/15.
* Modify User:
* Modify Date:
* Modify Description:
*/
public class test {
public static void main(String[] args) {
//此处必须try,catch一下,防止报错
try {
System.out.println("参数值===" + getProperties("config.properties", "testName"));
} catch (IOException e) {
e.printStackTrace();
}
}
//通过InputStream流读取本地文件
private static String getProperties(String configName, String key) throws IOException {
//将配置文件读取到流中----注意:maven项目配置文件一定要放在根目录中的resources;
// 错误写法:/config.properties
// 正确写法:config.properties
String value = "";
InputStream inputStream = test.class.getClassLoader().getResourceAsStream(configName);
System.out.println("begin!!!");
Properties properties = new Properties();
try {
// 将读取到的InputStream流加载到java.util.Properties中
properties.load(inputStream);
value = properties.getProperty(key);
} catch (IOException ioE) {
ioE.printStackTrace();
} finally {
inputStream.close();
}
return value;
}
}
一、简单介绍一下字节流,字符流
1.
处理字节流的抽象类
InputStream 是字节输入流的所有类的超类,一般我们使用它的子类,如FileInputStream等.
OutputStream是字节输出流的所有类的超类,一般我们使用它的子类,如FileOutputStream等.
2.
处理字符流的抽象类
InputStreamReader 是字节流通向字符流的桥梁,它将字节流转换为字符流.
OutputStreamWriter是字符流通向字节流的桥梁,它将字符流转换为字节流.
3.
BufferedReader 由Reader类扩展而来,提供通用的缓冲方式文本读取,readLine读取一个文本行,
从字符输入流中读取文本,缓冲各个字符,从而提供字符、数组和行的高效读取。
BufferedWriter 由Writer 类扩展而来,提供通用的缓冲方式文本写入, newLine使用平台自己的行分隔符,
将文本写入字符输出流,缓冲各个字符,从而提供单个字符、数组和字符串的高效写入。