Java学习笔记——读写追加文件内容

实际项目中,拿到文本文件如果需要在文件中替换或者添加内容,可以用java.io.RandomAccessFile实现。

原文件内容:

1、最简单的文件末尾添加

需要在网页中添加一个打印网页的按钮,上码

import java.io.RandomAccessFile;

public class MyTest20200405 {
	
	public static void main(String[] args) throws Exception {
		try {
			String sFilePath = "F:/study/20200520/mytest0520.txt";
			RandomAccessFile raf = new RandomAccessFile(sFilePath,"rw");
			raf.seek(raf.length());//定位到文件末尾
			String sAddStr = "<input type='button' name='print' value='打印' onclick='pagePrint()'>";
			sAddStr += "<script language='javascript'>"
					+ "function pagePrint(){"
					+ "document.all('print').style.display='none';"
					+ "window.print();"
					+ "}"
					+ "</script>";
			raf.write(sAddStr.getBytes("UTF-8"));//追加新的内容
			raf.close();
		} catch (Exception e) {
			e.printStackTrace();
		}
		
	}

}

修改后的文件内容

页面效果:

2、在文件内容中间添加

需要先定位添加内容的位置,并将该位置后面的内容临时存起来,再将添加的内容写上去,写完最后在把原来的内容追加上去。

不然会直接把原来的内容覆盖掉。

比如这样:

import java.io.RandomAccessFile;

public class MyTest20200405 {
	
	public static void main(String[] args) throws Exception {
		try {
			String sFilePath = "F:/study/20200520/mytest0520.html";
			RandomAccessFile raf = new RandomAccessFile(sFilePath,"rw");
			String sAddStr = "<input type='button' name='print' value='打印' onclick='pagePrint()'>";
			sAddStr += "<script language='javascript'>"
					+ "function pagePrint(){"
					+ "document.all('print').style.display='none';"
					+ "window.print();"
					+ "}"
					+ "</script>";
			raf.seek(77);//定位到指定位置
			raf.write(sAddStr.getBytes());//追加新的内容
			raf.close();
		} catch (Exception e) {
			e.printStackTrace();
		}
		
	}

}

覆盖效果

待续。。。。。。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值