Java实现读取项目中文件(.json或.properties)的方法详解
作者:百世经纶『一页書』 时间:2022-08-12 23:59:10
1. 读取json file
1.1 Json dependency
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.76</version>
</dependency>
1.2 字节流
重点部分
. /代表同级目录
…/ 代表上级目录(两个点)
/ 代表根目录
public class FileService {
public JSONObject reader(){
JSONObject resultJson = null;
String file = "src/main/resources/config_dev.json";
InputStream is = null;
try {
is = new FileInputStream(file);//操作
byte[] bytes = new byte[5000];//数组容量超级大,一次能将中英混合文本全部读取完
int len = -1;
while ((len = is.read(bytes)) != -1) {
String str = new String(bytes, 0, len, "UTF-8");
resultJson = process(str);
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {//释放资源
try {
if (null != is) {
is.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
return resultJson;
}
private static JSONObject process(String content) {
JSONObject json = JSONObject.parseObject(content);
return json;
}
}
1.3 buffer reader
public static String reader(String filePath) {
try {
File file = new File(filePath);
if (file.isFile() && file.exists()) {
InputStreamReader read = new InputStreamReader(new FileInputStream(file), "UTF-8");
BufferedReader bufferedReader = new BufferedReader(read);
String lineTxt = bufferedReader.readLine();
while (lineTxt != null) {
return lineTxt;
}
}
} catch (UnsupportedEncodingException | FileNotFoundException e) {
System.out.println("Cannot find the file specified!");
e.printStackTrace();
} catch (IOException e) {
System.out.println("Error reading file content!");
e.printStackTrace();
}
return null;
}
2. 读取properties file
public void readPropertiesFile() {
Properties pro = new Properties();
InputStream is = this.getClass().getResourceAsStream("/application.properties");
try {
pro.load(is);
Enumeration en = pro.propertyNames();
while (en.hasMoreElements()) {
String key = (String) en.nextElement();
String value = pro.getProperty(key);
System.out.println(key + "--" + value);
}
} catch (IOException e) {
throw new RuntimeException(e);
}
}
3. 好看的css样式
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<link rel="stylesheet" href="https://qxhut.cn/zb_users/plugin/Jz52_click/click.css">
<script src="https://qxhut.cn/zb_users/plugin/Jz52_click/click.js"></script>
<h1>Click Style</h1>
</body>
</html>
来源:https://blog.csdn.net/weixin_43916074/article/details/129883052
标签:Java,读取,文件
0
投稿
猜你喜欢
Java轻量级权限认证框架Sa-Token的使用
2023-03-13 16:34:59
Android仿微信朋友圈图片查看器
2023-01-27 18:07:20
Java多线程实现四种方式原理详解
2022-05-30 02:55:10
Java中Lambda表达式和函数式接口的使用和特性
2023-06-20 20:05:42
Java实现的质因数分解操作示例【基于递归算法】
2023-08-19 03:22:12
深入解析:打造自动消失的对话框
2022-04-07 02:53:56
idea右键没有java class选项问题解决方案
2023-05-29 23:38:40
解决RestTemplate加@Autowired注入不了的问题
2022-07-14 03:00:48
基于SpringMVC接受JSON参数详解及常见错误总结
2022-08-25 16:08:08
Java实现高校教务系统
2022-05-16 04:24:17
在Android app中实现九(n)宫格图片连续滑动效果
2022-10-14 21:09:23
Java使用GZIP压缩导致HTTP请求返回乱码问题解决
2022-04-12 07:31:09
C#简单创建和删除目录的方法
2022-04-17 00:31:58
Java享元设计模式优化对象创建提高性能和效率
2022-05-26 23:12:02
Android简单创建一个Activity的方法
2023-01-22 12:39:53
Android Studio kotlin生成编辑类注释代码
2023-06-16 12:03:20
C#最小二乘法拟合曲线成直线的实例
2021-10-23 16:20:47
一文搞懂String的intern()方法
2022-05-28 12:05:35
Android IPC机制Messenger实例详解
2023-04-27 13:25:06
Java重写与重载之间的区别
2021-06-30 03:16:13