【java】File的使用:将字符串写出到本地文件,大小0kb的原因
实现方法:
暂时写一种方法,将字符串写出到本地文件,以后可以补充更多种方法:
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()方法可以不用执行
【java】File的使用:将字符串写出到本地文件,大小0kb的原因的更多相关文章
- java里如何使用输入流和输出流实现读取本地文件里内容和写出到本地文件里
不多说,直接上干货! 第一种方法 PWDemo.java package zhouls.bigdata.DataFeatureSelection.filter; import java.io.File ...
- 移动端 h5 uniapp 读,写,删本地文件或sd文件
移动端 h5 uniapp 读,写,删本地文件或sd文件 应用场景: 当我们需要做离线应用或者是加载本地文件时使用到此方法.(本篇文章给大家分享访问app私有文件目录,系统公共目录,sd外置存储的文件 ...
- Java IO流的写入和写出操作 FileInputStream和FileOutputStream
今天学习了Java的IO流,关于文件的读入和写出,主要是FileInputStream和FileOutputStream来实现,这两个流是字节流.还有字符流(FileReader和FileWriter ...
- c# .net获取文件夹下的所有文件(多层递归),并获取区间数据(Jsion,xml等数据)写出到处理文件,学习分享~
static void Main(string[] args) { string path = string.Format(@"C:\Users\Administrator\D ...
- java中的文件读取和文件写出:如何从一个文件中获取内容以及如何向一个文件中写入内容
import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.Fi ...
- 使用dom4j工具:XMLWriter写出文件(五)
package dom4j_write; import java.io.File; import java.io.FileOutputStream; import java.io.OutputStre ...
- java IO流 (三) 节点流(或文件流)
1.FileReader/FileWriter的使用:1.1 FileReader的使用 /* 将day09下的hello.txt文件内容读入程序中,并输出到控制台 说明点: 1. read()的理解 ...
- 如何用java写出无副作用的代码
搞java的同学们可能对无副作用这个概念比较陌生,这是函数式编程中的一个概念,无副作用的意思就是: 一个函数(java里是方法)的多次调用中,只要输入参数的值相同,输出结果的值也必然相同,并且在这个函 ...
- JAVA IO流编程 实现文件的写入、写出以及拷贝
一.流的概念 流:数据在数据源(文件)和程序(内存)之间经历的路径. 输入流:数据从数据源(文件)到程序(内存)的路径. 输出流:数据从程序(内存)到数据源(文件)的路径. 以内存为参照,如果数据向内 ...
随机推荐
- Idea IntelliJ远程调试教程
总结 第一步:修改startup.sh 在倒第二行加上export JPDA_ADDRESS=8787 最后一行在start前面加上" jpda " 第二步:配置Idea, ...
- 【LuoguP1169 bzoj1057】[ZJOI2007]棋盘制作
首先把矩阵转化一下,把横纵坐标和为偶数点的值取反,这样就转化成求最大的'0'或'1'矩阵. 这道题每个数字是在格子内的,不能在边界包含障碍点. 求最大的0矩阵时,把1作为障碍点.求1同理. 然后求最接 ...
- bzoj 1692: [Usaco2007 Dec]队列变换 ——二分+hash
Description FJ打算带他的N(1 <= N <= 30,000)头奶牛去参加一年一度的“全美农场主大奖赛”.在这场比赛中,每个参赛者都必须让他的奶牛排成一列,然后领她们从裁判席 ...
- 01-modal
Demo示例程序源代码
源代码下载链接:01-modal.zip37.8 KB // MJAppDelegate.h // // MJAppDelegate.h // 01-modal // // Created by ...
- 哈希Hash在字符串中的应用_C++
本文含有原创题,涉及版权利益问题,严禁转载,违者追究法律责任 哈希大家都会用撒,字符串显然都会写撒,那么哈希离散化字符串不就懂了?!(XXX的神逻辑,其实原文是:树都晓得吧,数组显然都会开呀,那么恭喜 ...
- hdu 2016 数据的交换输出
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2016 题目大意:把最小的和第一个交换并输出.注意格式哦! #include <stdio.h&g ...
- JS形参与实参问题
JavaScript的参数传递也都是采用值传递的方式进行传值. (1) 通过实参调用函数的时候,传入函数里的是实参的副本而不是实参,因此在函数里面修改参数值并不会对实参造成影响. 例如:将全局 ...
- Kuangbin 带你飞-线段树专题 题解
HDU 1166 敌兵布阵 单调更新区间查询和 #include <map> #include <set> #include <list> #include < ...
- [ Python - 14 ] python进程及线程编程
什么是进程: 简单来讲,进程就是操作系统中运行的程序或任务,进程和程序的区别在于进程是动态的,而程序是静态的.进程是操作系统资源管理的最小单位. 什么是线程: 线程是进程的一个实体,是cpu调度和分派 ...
- OleDbDataAdapter具体使用11
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...