我要向一个文件中写N行数据。最后把每一行的数据进行汇总,把汇总信息写到文件的第一行去。这样,我就需要在前面写完之后。在文件第一行追加汇总信息了。(不能先汇总。只能先遍历去写每行的数据。最后把汇总信息追加到第一行去)
解决方案 »
- java如何读取远程MSMQ
- socket通信的时候,传送数据用DataOutputStream和用BufferedWriter2个类,为什么BufferedWriter传送不过去
- 高分求教,这个程序的多线程怎么了
- 关于 html 和 jsp 中的表单提交问题
- 关于java网络方面的问题,请各位高人指点
- 关于JOptionPane.showConfirmDialog的问题………………!!
- 画矩形的小问题!!
- 谁帮我讲一下,谢谢:)
- 多多都给...急急急。。。请问哪里有保存邮件附件的JSP源程序??
- 很菜的问题.请问java程序怎么生成exe文件啊?
- java中实现定位功能
- if (rs.getString(3)=="管理员")这个地方为什么不能比较
上代码
void insert(String filename,int pos,String insertContent){//pos是插入的位置
File tmp = File.createTempFile("tmp",null);
tmp.deleteOnExit();
try{
RandomAccessFile raf = new RandomAccessFile(filename,"rw");
FileOutputStream tmpOut = new FileOutputStream(tmp);
FileInputStream tmpIn = new FileInputStream(tmp);
raf.seek(pos);//首先的话是0
byte[] buf = new byte[64];
int hasRead = 0;
while((hasRead = raf.read(buf))>0){
//把原有内容读入临时文件
tmpOut.write(buf,0,hasRead);
}
raf.seek(pos);
raf.write(insertContent.getBytes());
//追加临时文件的内容
while((hasRead = tmpIn.read(buf))>0){
raf.write(buf,0,hasRead);
}
}}