实现方法:
暂时写一种方法,将字符串写出到本地文件,以后可以补充更多种方法:
public static void main(String[] args) { /** * ==============准备一些数据-start=============== */ String fileName = UUID.randomUUID().toString(); String filePath = "E:/sxContext"+ "/"+ fileName; String content = ""; StringBuilder stringBuilder = new StringBuilder(); int a = 10; for (int i = 0; i < a; i++) { stringBuilder.append(UUID.randomUUID().toString()+"\n\n"); } content = "测试文本文件:\r\n" + stringBuilder.toString(); /** * ==============准备一些数据-end=============== */ /** * ===============start-将字符串写出到本地文件================= */ File file = new File(filePath); //如果父级文件件不存在 则新创建 File parentFile = file.getParentFile(); if (!parentFile.exists()){ parentFile.mkdirs(); } FileWriter fw = null; BufferedWriter bw = null; try { if (!file.exists()){ file.createNewFile(); } fw = new FileWriter(file); bw = new BufferedWriter(fw); bw.write(content); bw.flush(); } catch (IOException e) { e.printStackTrace(); }finally { try { bw.close(); fw.close(); } catch (IOException e) { e.printStackTrace(); } } /** * ===============end-将字符串写出到本地文件================= */ }
【注意,
bw.write(content);
可以在for循环中多次执行!!!
如果 担心,可以在执行完bw.write()
执行:
bw.flush();
】
=======================
至于将文本内容写出到本地文件中,不管你写出的本地文件是不是txt文件或者没有后缀的文件,只要
1.父级目录不存在,创建父级目录
2.file文件判断exist() 如果没有就createNewFile()
3.将文本写出到本地
4.flush()
5.close()
出现本地文件0kb大小,可能会有以下几种原因:
1.fileName 中也就是要创建的文件名 中包含了 非法字符,最常见的非法字符就是:冒号
2.要么就是没有执行close()正常关闭流
3.flush()方法可以不用执行