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 字节流

重点部分

  • . /代表同级目录

  • &hellip;/ 代表上级目录(两个点)

  • / 代表根目录

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
  • asp之家 软件编程 m.aspxhome.com