利用RandomAccessFile类在指定文件指定位置插入内容

package File;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.RandomAccessFile;

/*利用RandomAccessFile类在指定文件指定位置插入内容。*/

public class InsertContent {
	public static void insert(String fileName, long pos, String insertContent)
			throws IOException {
		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);
			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);
			}
		}
	}

	public static void main(String[] args) throws IOException
	{
		insert("./src/File/InsertContent.java",45,"插入内容!\n");

	}
}
时间: 2024-10-12 23:57:17

利用RandomAccessFile类在指定文件指定位置插入内容的相关文章

从指定文件(字节数组)获取内容以及获取长度

package cn.felay.io; import java.io.ByteArrayInputStream; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStream; /** * @author <a mailto:[email protected]>felayman</a> * @t

JQuery在光标位置插入内容

1 (function($) { 2 $.fn.extend({ 3 insertAtCaret: function(myValue) { 4 var $t = $(this)[0]; 5 //IE 6 if (document.selection) { 7 this.focus(); 8 sel = document.selection.createRange(); 9 sel.text = myValue; 10 this.focus(); 11 } else 12 //!IE 13 if

在script所在位置插入内容

上一篇文章document.write()的一些坑说了浏览器输出流关闭后使用document.write会清空当前页面,因此要避免在window.onload.$(document).ready()和ajax获取数据后使用document.write插入内容.但是这些常用操作又是很难避免的,那么在使用上述三种方法的时候能不能达到document.write()同样的效果呢? 其实是可以的实现的,我们知道js中除了可以用docuemnt.write插入内容,还可以使用appendChild,利用a

Java中如何利用File类递归的遍历指定目录中的所有文件和文件夹

package cuiyuee; import java.io.File; import java.util.ArrayList; import java.util.List; public class GetAllDirectory { public static void showDirectory(File file){ File[] files = file.listFiles(); for(File a:files){ System.out.println(a.getAbsoluteP

利用WebRequest类上传文件

说明:1.WebRequest类是一个抽象类,所以上传类实际使用的是其子类 2.打开Fiddler软件,监视正常网页的文件上传,可以看到http协议的请求和响应信息,简略说明 (第一行:请求说明 POST http://localhost/UpLoad.aspx HTTP/1.1 (请求类型:post,请求地址: http://localhost/UpLoad.aspx,http协议类型:HTTP/1.1) 第二行至多行:请求头(一系列的 key:value) User-Agent: Mozil

读取文件任意位置的内容——RandomAccessFile

http://www.cnblogs.com/Sunw/p/3801145.html http://www.cnblogs.com/dukc/p/4776868.html http://www.cnblogs.com/zhujiabin/p/5660541.html 总结: 1.构造方法:RandomAccessFile有两个构造方法 (1) RandomAccessFile(File file, String mode) (2) RandomAccessFile(String filepath

关于文本输入框获取光标位置以及指定位置插入内容

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title></title> <script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script> </head> <body> &l

git忽略除指定文件/指定后缀名文件外的文件

不需要从头写.gitignore文件,GitHub已经为我们准备了各种配置文件,只需要组合一下就可以使用了.所有配置文件可以直接在线浏览:https://github.com/github/gitignore 举个例子: 假设你在Windows下进行Python开发,Windows会自动在有图片的目录下生成隐藏的缩略图文件,如果有自定义目录,目录下就会有Desktop.ini文件,因此你需要忽略Windows自动生成的垃圾文件: # Windows: Thumbs.db ehthumbs.db

zend framework将zip格式的压缩文件导入并解压到指定文件

html代码 <pre class="php" name="code"><fieldset> <legend>批量导入学生照片</legend> <form enctype="multipart/form-data" action="/Import/importstuimg" method="post"> 导入照片压缩包文件:<input v