通过ClassPathResource类获取文件流,SpringBoot中所有文件都在jar包中,没有一个实际的路径,因此可以使用以下方式。
public void function6(String fileName) throws IOException { ClassPathResource classPathResource = new ClassPathResource(fileName); InputStream inputStream = classPathResource.getInputStream(); getFileContent(inputStream); }
其中打印文件的方法如下:
public static void getFileContent(Object fileInPath) throws IOException { BufferedReader br = null; if (fileInPath == null) { return; } if (fileInPath instanceof String) { br = new BufferedReader(new FileReader(new File((String) fileInPath))); } else if (fileInPath instanceof InputStream) { br = new BufferedReader(new InputStreamReader((InputStream) fileInPath)); } String line; while ((line = br.readLine()) != null) { System.out.println(line); } br.close(); }