Java对文件和文件内容进行修改

本文介绍Java对文件和文件内容进行修改的方法。使用File类可进行文件的新建、删除、重命名等操作,但不能操作内容,操作内容需用输入/输出流。修改内容时,不同需求可采用OutputStream、Writer、RandomAccessFile类等,还说明了在不同位置添加、修改、删除数据的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Java对文件和文件内容进行修改

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

开发工具与关键技术:My Eclipse 10  ,Java

作者:陈显其

撰写时间:2019/5/7

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Java修改文件需要用到IO流,首先用把要修改的文件通过File类给弄进来,文件的新建、删除、目录都可以用File类进行操作,对目录也能操作,但不可以对文件的内容进行访问和操作,想操作文件的内容则需要使用输入/输出流。

用File类把文件获取到之后,File类里带着方法里有可以新建、删除、重命名文件的方法,对文件重命名时,如果对文件的路径进行修改,那么文件的位置就会发生变化,重命名某种意义上等同于移动,如下图中,在路径中加上一段

文件就从外面到了新建中这个文件夹里了

  

修改文件的内容用OutputStream和Writer作为基类,获取到文件,然后用实例的文件名点Writer(要加进去的内容)的方法添加文件内容,记得先把流里的数据全部推出去,然后才能关闭流

 

但是,这样会把文件里的原数据替换掉,也就是说之前的数据都没了,文件里保存的是现在Java程序刚添加的东西,适用于复制文件或者给新建的文件添加数据的时候用,如果是想在源数据基础上添加数据,建议使用RandomAccessFile类,如果是想加在最后面的话,需要吧指针seek调到最后,不然会默认添加到最前面去,

这样就把数据加进去了,但是,在想在中间的某处添加数据的话这样是不行的,因为这样添加的话会把后面的数据给覆盖掉,想在中间添加东西,要先把会被覆盖掉的数据给读取出来存到临时数组中,如下面的那样, 把插入点后面的数据存入数组里

然后把指针重新调到插入点,添加想添加插入的数据,然后把原本被放到别的地方的源文件的数据读取出来,再给它重新加上,这样就在中间给添加新的数据进去了

修改数据则是把要修改的那一段数据找出来,把想要数据给要修改的数据给覆盖掉,删除也可以这么能做,把要删除的那一段数据后面的数据拿出来,把指针调到要删除的数据前,然后直接给覆盖掉,这样可以当做删除来用

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值