导航:首页 > 编程语言 > java文件追加写入

java文件追加写入

发布时间:2022-04-23 08:43:49

java文件追加的几种方式

java文件追加内容的三种方法:
方法一:
public static void writeToTxtByRandomAccessFile(File file, String str){
RandomAccessFile randomAccessFile = null;
try {
randomAccessFile = new RandomAccessFile(file,"rw");
long len = randomAccessFile.length();
randomAccessFile.seek(len);
randomAccessFile.writeBytes(new String(str.getBytes(),"iso8859-1")+"\r\n");
} catch (FileNotFoundException e) {
e.printStackTrace();
}catch (IOException e) {
e.printStackTrace();
}finally{
try {
randomAccessFile.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
方法二:
public static void writeToTxtByFileWriter(File file, String content){
BufferedWriter bw = null;
try {
FileWriter fw = new FileWriter(file, true);
bw = new BufferedWriter(fw);
bw.write(content);
} catch (IOException e) {
e.printStackTrace();
}finally{
try {
bw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
方法三:
public static void writeToTxtByOutputStream(File file, String content){
BufferedOutputStream bufferedOutputStream = null;
try {
bufferedOutputStream = new BufferedOutputStream(new FileOutputStream(file, true));
bufferedOutputStream.write(content.getBytes());
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch(IOException e ){
e.printStackTrace();
}finally{
try {
bufferedOutputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}

Ⅱ java 如何向txt文件中的某一行继续写入

Java的RandomAccessFile提供对文件的读写功能,与普通的输入输出流不一样的是RamdomAccessFile可以任意的访问文件的任何地方。这就是“Random”的意义所在。


相关API:

RandomAccessFile(String
name, String
mode)构造器,模式分为r(只读),rw(读写)等

RandomAccessFile.readLine()方法实现对一整行的读取,并重新定位操作位置

RandomAccessFile.write(byte[] b)用于字节内容的写入


示例如下:

RandomAccessFileraf=newRandomAccessFile("f:/1.txt","rw");
inttargetLineNum=10;
intcurrentLineNum=0;
while(raf.readLine()!=null){
if(currentLineNum==targetLineNum){//定位到目标行时结束
break;
}
currentLineNum++;
}
raf.write(" insert".getBytes());
raf.close();


Ⅲ java将文字信息追加到指定txt文件

	Stringname=""//你的录入信息
Filefile=newFile("c:/name.txt");//录入文件地址
if(!file.exists()){
try{
file.createNewFile();
}catch(IOExceptione){
e.printStackTrace();
}
}
OutputStreamos=null;
try{
os=newFileOutputStream(file,true);//false覆盖true追加
byte[]b=name.getBytes();
os.write(b);//写入
os.close();//关闭流
}catch(Exceptione){
e.printStackTrace();
}

Ⅳ java 一个文件内容写入或追加到另一个文件和一个文件内容复制到另一个文件在方法上有什么区别吗

楼上的审题,人家题主问的是“文件追加写入”和“文件复制”有没有区别,不是问你怎么实现文件追加复制。
我觉得吧这个得看你的两段代码了,其实想来是没有区别的,复制的本质还是先读文件,再把读出来的东西写到目标文件了。关键在于调用write()方法时追加标志append是true还是false,追加标志默认是false的,也就是不追加,直接覆盖目标文件。

Ⅳ java:往文件中写数据,新写入的数据总是覆盖原有数据,怎么能实现追加功能呢

File file=new File("f:/a.txt");
BufferedWriter bw=null;
try {
bw=new BufferedWriter(new FileWriter(file,true));
bw.write("efg");
bw.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
这里关键代码bw=new BufferedWriter(new FileWriter(file,true));
后面参数的true,就代表即使a.txt里面有内容,也不会替换。

Ⅵ 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语言对文件进行追加内容

额 那个java的输入到文件的方法很多拿个例子来说一下
比如java 的输入有个FileOutputStream 文件输出流 实现向文件中写入内容
他除了有个无参的构造方法还有一个构造方法
FileOutputStream(File file ,boolean append) 若第二个参数为true,当前输入流会在文件的末尾开始写入新的内容即追加新内容

Ⅷ java如何对文件追加写入

java文件追加内容的三种方法:
方法一:
public static void writeToTxtByRandomAccessFile(File file, String str){
RandomAccessFile randomAccessFile = null;
try {
randomAccessFile = new RandomAccessFile(file,"rw");
long len = randomAccessFile.length();
randomAccessFile.seek(len);
randomAccessFile.writeBytes(new String(str.getBytes(),"iso8859-1")+"\r\n");
} catch (FileNotFoundException e) {
e.printStackTrace();
}catch (IOException e) {
e.printStackTrace();
}finally{
try {
randomAccessFile.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
方法二:
public static void writeToTxtByFileWriter(File file, String content){
BufferedWriter bw = null;
try {
FileWriter fw = new FileWriter(file, true);
bw = new BufferedWriter(fw);
bw.write(content);
} catch (IOException e) {
e.printStackTrace();
}finally{
try {
bw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
方法三:
public static void writeToTxtByOutputStream(File file, String content){
BufferedOutputStream bufferedOutputStream = null;
try {
bufferedOutputStream = new BufferedOutputStream(new FileOutputStream(file, true));
bufferedOutputStream.write(content.getBytes());
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch(IOException e ){
e.printStackTrace();
}finally{
try {
bufferedOutputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}

Ⅸ Java怎样往一个文件里多次写入数据

所以你写csv表格,这么做就可以了,每写一列就加一个,就是第二列。
距离有个bufferwriter
writer对象要写一个csv文件。
writer.wrtie("第一列");
writer.write(",");
writer.write("第二列");
这就是一个简单的用,分割的csv文件。

阅读全文

与java文件追加写入相关的资料

热点内容
老死pdf 浏览:25
云服务器关机网址不见了 浏览:69
余冠英pdf 浏览:755
开发一个app上市需要什么步骤 浏览:28
phpsleep方法 浏览:430
时间同步服务器ip地址6 浏览:926
钢琴谱pdf下载 浏览:524
香港阿里云服务器怎么封udp 浏览:875
APp买海鲜到哪里 浏览:501
辽油社保app总提示更新怎么办 浏览:586
导入源码教程视频 浏览:613
天翼贷app在哪里下载 浏览:186
app开发源码查看器 浏览:516
程序员发展到了一个瓶颈 浏览:120
程序员去机房干嘛 浏览:697
英雄训练师怎么看曾经服务器 浏览:546
魔兽世界单机输入gm命令 浏览:372
51单片机最大负跳距是多少 浏览:418
android聊天控件 浏览:128
导致压缩机坏的原因 浏览:295