答复問題1:
fr.read(char[],int,int);
这里的read函数是将文本里从第一个int开始到第二个int结束的内容读到数组char[]中。答复問題2:
用str.toCharArray();可以变成char[]。答复問題3:
这里给你提供一个方法:
读取文本后再往文本文件里写。当读出文本文件的某行后,如果满足你删除的条件,然后就写入空行就行了。
fr.read(char[],int,int);
这里的read函数是将文本里从第一个int开始到第二个int结束的内容读到数组char[]中。答复問題2:
用str.toCharArray();可以变成char[]。答复問題3:
这里给你提供一个方法:
读取文本后再往文本文件里写。当读出文本文件的某行后,如果满足你删除的条件,然后就写入空行就行了。
String ss="xxxxx";
char [] cc = new char[ss.length];
cc = ss.toCharArray();
try{
FileWriter fw = new FileWriter("backup.txt",true);
BufferedWriter bw = new BufferedWriter(fw);
FileReader fr=new FileReader("BookInfor.txt");
BufferedReader br=new BufferedReader(fr);
String record;
while ((record = br.readLine()) != null) {
char[] s=new char[1];
fr.read(s,0,1);
//String ss=s.toString();
System.out.println(record);
System.out.println(s);
if(s.equals("b")){
bw.write(record);
System.out.println("ok");
}
}
bw.close();
br.close();
fw.close();
fr.close();
}catch (Exception ex) {
System.out.println("IOException error!");
}
BookInfor中内容如下:
b
b
顯示的結果:(沒有ok,那裏的問題??)
bb
假设为删除有"string"的行
import java.io.*;public class ReadFileTest
{
public static void main(String[] args)
{
//读入
try{
BufferedReader br = new BufferedReader(new FileReader("t.txt"));
String line;
StringBuffer buffer=new StringBuffer();
while((line=br.readLine())!= null)
{
if(line.indexOf("string")==-1)
{
buffer.append(line);
buffer.append("\r\n");
}
}
br.close();
//写文件
PrintWriter out=new PrintWriter(new FileWriter("t.txt"));
out.println(new String(buffer));
out.close();
//回显屏幕
BufferedReader in=new BufferedReader(new FileReader("t.txt"));
while((line=in.readLine())!=null)
{
System.out.println(line);
}
in.close();
}
catch(Exception ex){ System.out.println("IOException error!");}
}
}
{
buffer.append(line);
buffer.append("\r\n");
}
能解釋一下嗎?
{
buffer.append(line);//把这一行加入buffer
buffer.append("\r\n");//在加入换行
}
这样,buffer不就是删除了由特定要求的行了么
然后在把buffer写入文件,就达到题目要求了
以後還請多多關照:)
你有api的中文介紹嗎?
如果兩行中不同列有同樣的信息,怎樣解決只刪一個的問題呢?
我是这么想的,把读出来的line方到string[]中,然后比较,如果新的line和string[]中的一样,就删除这一行。不过不一样就把新的line也放到string[]中。
“現在該行可以刪除,但是在所有信息後插入了空行“
这句不太明白