「java在文件首行追加」java 文件追加

博主:adminadmin 2022-12-18 17:21:06 63

今天给各位分享java在文件首行追加的知识,其中也会对java 文件追加进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

java文件读写,在一个已经有内容的文件中,追加第一行,如何做到?

我的想法是可以用RandomAccessFile,这个类的seek方法,想在文件的哪个位置插入内容都行。所以你的第一行就不在话下了。但是,这个会覆盖你文件中插入位置后面的内容。相当于我们在输入的时候,按了键盘的insert键盘。所以,像你这种情况只能用临时文件来存储原有的内容,然后把要插入的数据写入文件,再把临时文件的内容追加到文件中。

void insert(String filename,int pos,String insertContent){//pos是插入的位置

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);//首先的话是0

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);

}

}

}

java如何追加写入txt文件

 java中,对文件进行追加内容操作的三种方法!

import java.io.BufferedWriter;

import java.io.FileOutputStream;

import java.io.FileWriter;

import java.io.IOException;

import java.io.OutputStreamWriter;

import java.io.PrintWriter;

import java.io.RandomAccessFile;

//如果文件存在,则追加内容;如果文件不存在,则创建文件,追加内容的三种方法

public class AppendContentToFile {

@SuppressWarnings("static-access")

public static void main(String[] args) {

AppendContentToFile a = new AppendContentToFile();

a.method1();

a.method2("E:\\dd.txt", "222222222222222");

a.method3("E:\\dd.txt", "33333333333");

}

方法1:

public void method1() {

FileWriter fw = null;

try {

//如果文件存在,则追加内容;如果文件不存在,则创建文件

File f=new File("E:\\dd.txt");

fw = new FileWriter(f, true);

} catch (IOException e) {

e.printStackTrace();

}

PrintWriter pw = new PrintWriter(fw);

pw.println("追加内容");

pw.flush();

try {

fw.flush();

pw.close();

fw.close();

} catch (IOException e) {

e.printStackTrace();

}

}

方法2:

public static void method2(String file, String conent) {

BufferedWriter out = null;

try {

out = new BufferedWriter(new OutputStreamWriter(

new FileOutputStream(file, true)));

out.write(conent+"\r\n");

} catch (Exception e) {

e.printStackTrace();

} finally {

try {

out.close();

} catch (IOException e) {

e.printStackTrace();

}

}

}

方法3:

public static void method3(String fileName, String content) {

try {

// 打开一个随机访问文件流,按读写方式

RandomAccessFile randomFile = new RandomAccessFile(fileName, "rw");

// 文件长度,字节数

long fileLength = randomFile.length();

// 将写文件指针移到文件尾。

randomFile.seek(fileLength);

randomFile.writeBytes(content+"\r\n");

randomFile.close();

} catch (IOException e) {

e.printStackTrace();

}

}

}

java文件读写 在一个已经有内容的文件中追加第一行 如何做到

如果要在已有内容的文件开头插入内容就只能先把原内容读出来,然后先写入要插入的东西,然后再把原内容写回去,然后关闭输出流

如果要在已有内容的文件末尾追加内容就比较简单了

在创建FileOutputStream对象的时候第二个参数给个true,就表示续写文件,而非覆盖文件已有内容了

new FileOutputStream(file, true)

JAVA如何在文件头添加内容?

“先读入,再写回”的方法时可行的

这个文件有几十兆,不代表整个读入,不是占用几十兆内存。先写入头部的文字,再循环读一点源文件,写一点源文件。

RandomAccessFile 也可以,只是最初要留出空间,比如一些空格

java在文件首行追加的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java 文件追加、java在文件首行追加的信息别忘了在本站进行查找喔。

The End

发布于:2022-12-18,除非注明,否则均为首码项目网原创文章,转载请注明出处。