java——修改txt文件中某一行的内容

  今天无意间看到java.io中有一个类:RandomAccessFile,可以在文件的任意位置进行读写操作,想到我之前写的一个小项目,想在txt中修改某一行的内容,都是从头遍历txt文件,修改这一行的同时,把整个文件放入缓存,再把修改后的内容重新写入文件,可以说是很蠢了,但一直没找到好的办法。

  这个RandomAccessFile可以从特定的某一行开始读写文件,这样就比我之前的办法好一些了。但是,RandomAccessFile不能像文件的指定位置插入内容。如果强制将文件记录指针移动到中间位置后开始输出内容,则新的内容会覆盖文件中原有的内容。所以还是要要先把插入点后面的内容读入缓冲区,等插入完成后,再讲缓冲区的内容追加到文件的后面。

具体内容参考:https://www.cnblogs.com/dongguacai/p/5699444.html

原文地址:https://www.cnblogs.com/gaoquanquan/p/10260533.html

时间: 2024-10-06 08:46:59

java——修改txt文件中某一行的内容的相关文章

使用python删除txt文件中两行之间的内容

txt=open(r'test.txt') lines=[] flag=False # 立flag for line in txt: if line.strip()=="start line": flag=True # 起始行开始不再添加 if not flag: lines.append(line) # 需求之外的行添加到列表 if line.strip()=="end line": flag=False # 结束行开始恢复添加 txt.close() open(

php 读取修改txt文件

//txt文件中只有一行数据 读 $fp = fopen("password.txt", "r"); if($fp) { $pwd = fgets($fp); } else { echo "打开文件失败"; } fclose($fp); //txt文件中只有一行数据 写 1 $fp = fopen("password.txt", "w");//文件被清空后再写入 2 if($fp) 3 { 4 $flag=

java读取txt文件的2中方法---并将内容(每一行以固定的字符分割切成2段)存到map中去

#java读取txt文件的第一种方法 /** * 方法:readTxt * 功能:读取txt文件并把txt文件的内容---每一行作为一个字符串加入到List中去 * 参数:txt文件的地址 * 返回:Map * @param file * @return * @throws IOException */ public static Map<String, String> readTxt(String file) throws IOException { Map<String, Strin

Java导出List集合到txt文件中——(四)

有时候,需要将数据以一定格式导出到txt文件中.利用Java的IO可以轻松的导出数据到txt中. 1 package Action.txt; 2 3 import java.io.BufferedWriter; 4 import java.io.File; 5 import java.io.FileOutputStream; 6 import java.io.OutputStreamWriter; 7 import java.io.Writer; 8 import java.util.Array

java将数据写入到txt文件中(txt有固定的格式)

java将数据写入到txt文件中,这个应该对于学过java I/O的人来说是很简单的事情了,但是如果要将数据以固定的格式写入到txt文件中,就需要一定的技巧了. 这里举个简单的例子,以供参考: 比如我要将数据写成下面的样子: 1      |      2      |        3       |        4 5      |      6      |        8       |        9 也许看起来很简单的,因为每个数据所代表的长度是不一样的,也有可能编码不一样,所

java读取TXT文件的方法

java读取txt文件内容.可以作如下理解: 首先获得一个文件句柄.File file = new File(); file即为文件句柄.两人之间连通电话网络了.接下来可以开始打电话了. 通过这条线路读取甲方的信息:new FileInputStream(file) 目前这个信息已经读进来内存当中了.接下来需要解读成乙方可以理解的东西 既然你使用了FileInputStream().那么对应的需要使用InputStreamReader()这个方法进行解读刚才装进来内存当中的数据 解读完成后要输出

C++读写TXT文件中的string或者int型数据以及string流的用法

对文件的读写操作是我们在做项目时经常用到的,在网上看了很多博客,结合自身的项目经验总结了一下,因此写了这篇博客,有些地方可能直接从别的博客中复制过来,但是都会注明出处. 一.文件的输入输出 fstream提供了三个类,用来实现c++对文件的操作.(文件的创建.读.写). ifstream -- 从已有的文件读入 ofstream -- 向文件写内容 fstream - 打开文件供读写 文件打开模式: ios::in             只读 ios::out            只写 io

java 读写 txt 文件

Java读取txt文件内容.可以作如下理解: 1.首先获得一个文件句柄.File file = new File(); file即为文件句柄.两人之间连通电话网络了.接下来可以开始打电话了. 2.通过这条线路读取甲方的信息:new FileInputStream(file) 目前这个信息已经读进来内存当中了.接下来需要解读成乙方可以理解的东西 3.既然你使用了FileInputStream().那么对应的需要使用InputStreamReader()这个方法进行解读刚才装进来内存当中的数据 4.

java读取TXT文件的方法 (转)

转自:http://www.cnblogs.com/manongxiaojiang/archive/2012/10/13/2722068.html java读取txt文件内容.可以作如下理解: 首先获得一个文件句柄.File file = new File(); file即为文件句柄.两人之间连通电话网络了.接下来可以开始打电话了. 通过这条线路读取甲方的信息:new FileInputStream(file) 目前这个信息已经读进来内存当中了.接下来需要解读成乙方可以理解的东西 既然你使用了F