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