有一文本文件,每行都有一段数据,要如何把文件的第一行删除?
解决方案 »
- 关于a和b中在内存中的分配问题
- 编码转换的问题....在线等
- java时间规则问题
- Java动态生成导入类(高手请进)
- 新手的cannot resolve symbol out问题 请赐教
- 菜单被遮住了不能显示??
- 为什么不能向XML文件中的空结点中添加子结点?
- (严重推荐)阎宏网站提供的免费Java资源
- 如何获取windows中的时区
- 我进入IT业1年,我所在的公司只有一个美工和我两个技术人员,虽然什么项目都要我做,但是感觉是在自学,目光短浅,请问我是继续在这个公
- soket 接收数据问题
- Swing里面有没有办法动态刷新JTable中的内容,看起来就像是动态滚动,时时显示最新产生新数据!!100分求救!!!!
BufferedReader reader =
new BufferedReader(
new FileReader(fileName)); // 忽略第一行
reader.readLine(); final int SIZE = 1024;
char[] chunk = new char[SIZE]; StringBuffer buf;
int len; while((len = reader.read(chunk, 0, SIZE)) != -1) {
buf.append(chunk, 0, len);
} reader.close(); BufferedWriter writer =
new BufferedWriter(
new FileWriter(fileName));
writer.write(buf.toString());
writer.close();} catch (IOException ioe) {
e.printStackTrace();
}
而且上面的filename也不能是同一个,如果文件比较大也不能用StringBuffer类来读。
目前我看也只有先建立另一个文件从那文件读出所需数据再写入后重命名。
1)而且上面的filename也不能是同一个
为什么不能是同一个?我读完之后把reader关掉了。2)如果文件比较大也不能用StringBuffer类来读
StringBuffer可以容纳2G多一点的字符,大多数文本文件不会超过1M3)先建立另一个文件从那文件读出所需数据再写入后重命名
这种方法是可行的,并且可以节省内存,但是对于一般的应用,没必要把代码搞得太复杂。