java使用randomaccessfile在文件任意位置写入数据

 更新时间:2014年01月11日 16:19:21   作者:  
Java在文件任意位置写入数据可以使用RandomAccessFile方法来完成,下面看一个简单的示例就明白了
(福利推荐:【腾讯云】服务器最新限时优惠活动,云服务器1核2G仅99元/年、2核4G仅768元/3年,立即抢购>>>:9i0i.cn/qcloud

(福利推荐:你还在原价购买阿里云服务器?现在阿里云0.8折限时抢购活动来啦!4核8G企业云服务器仅2998元/3年,立即抢购>>>:9i0i.cn/aliyun

复制代码 代码如下:

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


public class InsertContent {
    public static void insert(String fileName, long pos, String insertContent) throws IOException{
        File file = File.createTempFile("tmp", null);
        file.deleteOnExit();
        RandomAccessFile raf = new RandomAccessFile(fileName, "rw");
        FileInputStream fileInputStream = new FileInputStream(file);
        FileOutputStream fileOutputStream = new FileOutputStream(file);
        raf.seek(pos);
        byte[] buff = new byte[64];
        int hasRead = 0;
        while((hasRead = raf.read(buff)) > 0){
            fileOutputStream.write(buff);
        }
        raf.seek(pos);
        raf.write(insertContent.getBytes());
        //追加文件插入点之后的内容
        while((hasRead = fileInputStream.read(buff)) > 0){
            raf.write(buff, 0, hasRead);
        }
        raf.close();
        fileInputStream.close();
        fileOutputStream.close();
    }
    public static void main(String[] args) throws IOException {
        insert("F:\AttendanceActivity.java", 57, "插入的内容rn");
    }
}

相关文章

  • SpringBoot与单元测试JUnit的结合操作

    SpringBoot与单元测试JUnit的结合操作

    这篇文章主要介绍了SpringBoot与单元测试JUnit的结合操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-10-10
  • java模式匹配之蛮力匹配

    java模式匹配之蛮力匹配

    这篇文章主要介绍了java模式匹配之蛮力匹配的相关资料和代码,需要的朋友可以参考下
    2015-05-05
  • java解析{{}}变量名以及文本内容替换操作

    java解析{{}}变量名以及文本内容替换操作

    这篇文章主要介绍了java解析{{}}变量名以及文本内容替换操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-09-09
  • SpringBoot后端解决跨域问题的3种方案分享

    SpringBoot后端解决跨域问题的3种方案分享

    这篇文章主要给大家分享介绍了关于SpringBoot后端解决跨域问题的3种方案,跨域指的是浏览器不能执行其他网站的脚本,它是由浏览器的同源策略造成的,是浏览器施加的安全限制,需要的朋友可以参考下
    2023-07-07
  • Java实现矩阵顺时针旋转90度的示例

    Java实现矩阵顺时针旋转90度的示例

    今天小编就为大家分享一篇Java实现矩阵顺时针旋转90度的示例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-01-01
  • Java实现的动态数字时钟功能示例【显示世界时间】

    Java实现的动态数字时钟功能示例【显示世界时间】

    这篇文章主要介绍了Java实现的动态数字时钟功能,结合实例形式分析了java显示北京、纽约、伦敦等世界时间的相关日期时间运算操作技巧,需要的朋友可以参考下
    2019-03-03
  • Java Vector实现班级信息管理系统

    Java Vector实现班级信息管理系统

    这篇文章主要为大家详细介绍了Java Vector实现班级信息管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-02-02
  • Java 执行CMD命令或执行BAT批处理方式

    Java 执行CMD命令或执行BAT批处理方式

    这篇文章主要介绍了Java 执行CMD命令或执行BAT批处理方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-08-08
  • SpringBoot利用@Retryable注解实现接口重试

    SpringBoot利用@Retryable注解实现接口重试

    本文主要介绍了springboot如何利用@Retryable注解实现接口重试功能,文中示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-06-06
  • Java Spring-IOC容器与Bean管理之基于注解的方式案例详解

    Java Spring-IOC容器与Bean管理之基于注解的方式案例详解

    这篇文章主要介绍了Java Spring-IOC容器与Bean管理之基于注解的方式案例详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-08-08

最新评论

?


http://www.vxiaotou.com