java如何读取并修改txt文件

txt存放路径为D:/ABC/1.txt
文件内容为:\bin\Host\Host.exe
\bin\InfoPlayer\InfoPlayer.exe
\bin\FileManager\FileManager.exe
\bin\Updater\Updater.exe
\bin\NTP_Client\ntp_Client.exe
请问如何用java读取并修改文件内容
(要有说明的代码最好 谢谢了!!!!!!!!!!)

Java IO系统里读写文件使用Reader和Writer两个抽象类,Reader中read()()和close()方法都是抽象方法。Writer中 write(),flush()和close()方法为抽象方法。子类应该分别实现他们。
Java IO已经为我们提供了三个方便的Reader的实现类,FileReader,InputStreamReader和BufferedReader。其中最重要的类是InputStreamReader, 它是字节转换为字符的桥梁。你可以在构造器重指定编码的方式,如果不指定的话将采用底层操作系统的默认编码方式,例如GBK等。
FileReader读txt文件例子
FileReader fr = new FileReader("D:/Test.txt");
int ch = 0;
while((ch = fr.read())!=-1 ){
System.out.print( (char)ch );
}
其中read()方法返回的是读取得下个字符。

InputStreamReader读txt文件例子
InputStream is = new FileInputStream(new File("D:/Test.txt"));
InputStreamReader fr = new InputStreamReader(is);
int ch = 0;
while((ch = fr.read())!=-1 ){
System.out.print((char)ch);
}
这和FileReader并没有什么区别,事实上在FileReader中的方法都是从InputStreamReader中继承过来的。 read()方法是比较好费时间的,如果为了提高效率,我们可以使用BufferedReader对Reader进行包装,这样可以提高读取得速度,我们可以一行一行的读取文本,使用 readLine()方法。
BufferedReader br = new BufferedReader(new FileReader("Test.txt")));
String data = br.readLine();//一次读入一行,直到读入null为文件结束
while( data!=null){
System.out.println(data);
data = br.readLine(); //接着读下一行
}
当你明白了如何用Reader来读取文本文件的时候那么用Writer写文件同样非常简单。有一点需要注意,当你写文件的时候,为了提高效率,写入的数据会先放入缓冲区,然后写入文件。因此有时候你需要主动调用flush()方法。

有读就有写,写文本文件可以使用PrintWriter,FileWriter,BufferedWriter。
FileWriter fw = new FileWriter("D:/Test.txt");
String s = "hello world";
fw.write(s,0,s.length());
fw.flush();

OutputStreamWriter osw = new OutputStreamWriter(new FileOutputStream("D:/Test1.txt"));
osw.write(s,0,s.length());
osw.flush();

PrintWriter pw = new PrintWriter(new OutputStreamWriter(new FileOutputStream("D:/Test2.txt")),true);
pw.println(s);

fw.close();
osw.close();
pw.close();
如果想接着写入某个文件。 声明时FileWriter fw = new FileWriter("log.txt",true);加个true就可以了。
File file = new File("D:/Test.txt");
File dest = new File("D:/new.txt");
try {
BufferedReader reader = new BufferedReader(new FileReader(file));
BufferedWriter writer = new BufferedWriter(new FileWriter(dest));
String line = reader.readLine();
while(line!=null){
writer.write(line);
line = reader.readLine();
}
writer.flush();
reader.close();
writer.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-12-09
这个算是基本的操作技能了.
给你个思路,用io的bufferedRead流读取文件每次读取一行.对读取的内容进行修改再放入到一个StringBuilder里.
文件读完后,再用io的FileWriter写出到原文件中就行了
代码不想写了,这个基本的技能你正好自己练练,有好处的
第2个回答  2011-12-09
public static void main(String[] args) throws IOException {
BufferedReader bufferedReader = null;
PrintWriter printWriter = null;

try{
bufferedReader = new BufferedReader(new FileReader("D:\\ABC\\1.txt"));

String l;

while ((l = bufferedReader.readLine()) != null) {
// opeartion l
System.out.println(l);
}
} finally {
if (bufferedReader != null) {
bufferedReader.close();
}

if (printWriter != null) {
printWriter.close();
}
}
}

希望对 你有所帮助。。。本回答被提问者采纳
第3个回答  2011-12-09
java.lang.io.*包
第4个回答  2011-12-09
FileReader fr=new FileReader("D:/1.txt");
FileWriter fw=new FileWriter("D:/1.txt");
BufferedReader br=new BufferedReader(fr);
BufferedWriter bw=new BufferedWriter(fw);
String read=null;
String all=null;
while((read=br.readLine())!=null)
{
System.out.println(read+" 你想修改吗?Y/N:");
Scanner scan=new Scanner(System.in);
if(scan.next().equals("Y"))
{
all+=scan.nextLine();
}
all+=read;
}
bw.write(all);

java中怎么读取文件内容(java中如何读取文件)
2、方式一:采用ServletContext读取,读取配置文件的realpath,然后通过文件流读取出来。因为是用ServletContext读取文件路径,所以配置文件可以放入在web-info的classes目录中,也可以在应用层级及web-info的目录中。3、java读取txt文件内容。可以作如下理解:首先获得一个文件句柄。Filefile=newFile();file即...

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

java读取、修改、写入txt文件
模拟:先创建一个TXT文件(内容来自控制台);然后读取文件并在控制台输出;最后实现对新创建的TXT文件(的数据进行排序后)的复制。分别对应三个函数,调用顺序需要注意:创建、读取、复制。效果图如下:绿色部分为控制台输入的内容(当输入end时,结束)代码如下:package com.baidu;import java.io.BufferedRea...

Java如何实现读取一个txt文件的所有内容,然后提取所需的部分并把它写 ...
代码如下:import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStreamReader;import java.io.OutputStreamWriter;import ...

java 文本文件部分内容修改?
1、用 FileInputStream 读取文件内容;2、修改内容,string操作;3、用 FileOutputStream 写文件内容;参考例子如一下:import java.io.*;public class TestBufferStream{public static void main(String[] args){try{BufferedReader in = new BufferedReader(new FileReader("in.txt"));BufferedWriter ...

java如何读取txt文本数据并以数组形式一行
import java.io.File;import java.io.FileReader;public class ReadFiledata { public static String txt2String(File file){ StringBuilder result = new StringBuilder();try{ BufferedReader br = new BufferedReader(new FileReader(file));\/\/构造一个BufferedReader类来读取文件 String s = null;whi...

JAV中怎么读取一个txt文件,然后转化为字符串形式保存
以下是读取文本的代码,如果需要字符串操作,直接操作变量line就可以了。import java.io.*;class BufferedReaderTest { public static void main(String[] args) { try { FileReader in = new FileReader("file.txt");BufferedReader br = new BufferedReader(in);String line;while ((line = br....

如何用java实现读取txt文件并对其内容进行处理?java菜菜鸟,求好心人来...
如何用java实现读取txt文件并对其内容进行处理?java菜菜鸟,求好心人来个完整的程序。 要读取A.txt(路径D:\/A.txt),内容为123456要求输出B.txt(路径D:\/B.txt),内容为142536... 要读取A.txt (路径D:\/A.txt),内容为1 2 34 5 6要求输出B.txt (路径D:\/B.txt),内容为1 42 53 6 展开  我来...

如何用java读取一个txt文件内容,再创建一个新的txt文件,把内容保存进 ...
public static void main(String[] args) throws IOException,ClassNotFoundException { try { FileInputStream in = new FileInputStream(\/\/创建输入流 "E:\\\\0326java\\\\javase\\\\src\\\\io\\\\TestFileInputStream.java");FileOutputStream out = new FileOutputStream("E:\\\\1.txt");\/\/创建输出流 ...

Java编程:如何一行一行读取TXT文档?
file = new File("D:\\\\Test.java");\/\/Text文件 BufferedReader br = new BufferedReader(new FileReader(file));\/\/构造一个BufferedReader类来读取文件 String s = null;while((s = br.readLine())!=null){\/\/使用readLine方法,一次读一行 System.out.println(s);} br.close();;} } ...

相似回答