SpringBoot 動態更新 resources 目錄的文件

1、前言

 SpringBoot 打成 Jar 包形式運行後 ,resources 目錄下文件的讀取修改和原來不太同樣,網上比較多的是關於讀取的方式,修改的幾乎沒有,終於在 stackoverflow 上找到了正確的打開方式。code

2、 讀取

public void read(){
        InputStream stream = null;
        BufferedReader bufferedReader = null;
        try {
            stream = getClass().getClassLoader().getResourceAsStream("sensitiveWords.dat");
            bufferedReader = new BufferedReader(new InputStreamReader(stream, "UTF-8"));
            String txt;
            while ((txt = bufferedReader.readLine()) != null) {
                set.add(txt);
            }
        } catch (Exception e) {
            log.error("sensitiveWords.dat 文件不存在", e);
        } finally {
            bufferedReader.close();
            stream.close();
        }
   }

3、 修改

public void write(){
           String filePath = new ClassPathResource("sensitiveWords.dat").getPath();
           BufferedWriter sensitiveWordsWriter = new BufferedWriter(new OutputStreamWriter(
                   new FileOutputStream(filePath)));
           sensitiveWordsWriter.write(newSensitiveWords);
           sensitiveWordsWriter.flush();
           sensitiveWordsWriter.close();
   }
相關文章
相關標籤/搜索