大家也可以帮帮 芭芭拉2,这是他的第二题答案:
- package itheima;
- import java.io.*;
- import java.lang.*;
- class Test2
- {
- public static void main(String[] args) throws IOException
- {
- BufferedReader bufr1 =new BufferedReader(new FileReader(".\\src\\itheima\\text1.txt"));//创建流对象和文件相关联
- BufferedReader bufr2=new BufferedReader(new FileReader(".\\src\\itheima\\text2.txt"));//创建流对象和文件相关联
- BufferedWriter bufw=new BufferedWriter(new FileWriter(".\\src\\itheima\\text4.txt"));//创建写入流对象并和文件相关联。
-
- int l=0;
- int num=0;
- while((l=bufr1.read())!=-1)//读取单个字符直到流末尾。
- {
- /*
- 回车:\n
- 水平制表符: \t
- 空格:\s
- 换行:\r
- */
- String m=l+"";//将读取的字符转化为字符串
- //m.replaceAll("\\s","");
- if (("".equals(m))||("\r".equals(m))||("\n".equals(m))) continue;//判断空格,换行,回车。
- else//若是字符,则进一步判断
- {
- int s=0;
- while((s=bufr2.read())!=-1)//text1中的一个字符与text2中字符一一比较,
- {
- String n=s+"";
- if (("".equals(n))||("\r".equals(n))||("\n".equals(n))) continue;//判断空格,换行,回车。
- else if(l!=s) //text1中的字符和text2中的字符不同。
- {
- bufw.write(s);//有不同的字符则写入到text4
-
- //bufw.flush();//刷新缓冲区
- num++;
- if(num==9) //相当于每5个字符换行
- bufw.write("\r\n");
- else bufw.write("");//一到5个字符,则中间用空格隔开
- bufw.flush();//刷新缓冲区
- }
- else continue;//字符不同,则继续寻找
-
- }
- bufw.flush();
- }
-
- }
- bufw.close();
- bufr2.close();
- bufr1.close();
-
- }
- }
复制代码 |