帮我看看哪错了 写不到新文件里去
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.Reader;
import java.io.Writer;
import java.nio.Buffer;
import java.util.Random;
public class Lian {
public static void main(String[] args) throws IOException {
Reader reader;
reader = new FileReader("c:/123.txt");
BufferedReader br = new BufferedReader(reader);
Writer writer = new FileWriter("d:/123.txt");
BufferedWriter bw=new BufferedWriter(writer);
StringBuffer sf= new StringBuffer();
while(true){
int n=br.read();
if(n==-1){
break;
}
char a=(char)n;
sf.append(a);
}
String s= sf.toString();
s.replace("暴力", "xx");
s.replace("色情", "xx");
bw.write(s);
bw.close();
br.close();
}
}
不需要 try
Java用writer 实现文档中字眼替换
答案:2 悬赏:40
解决时间 2021-02-06 04:38
- 提问者网友:枯希心
- 2021-02-06 00:22
最佳答案
- 二级知识专家网友:开心就好
- 2021-02-06 01:14
String s= sf.toString();
s= s.replace("暴力", "XX");
s=s.replace("色情", "xx");
bw.write(s);
这样就可以了,看看api的描述说明 就知道咋回事了
s= s.replace("暴力", "XX");
s=s.replace("色情", "xx");
bw.write(s);
这样就可以了,看看api的描述说明 就知道咋回事了
全部回答
- 1楼网友:短发女王川岛琦
- 2021-02-06 02:34
看了源码,write(int c)最后赋值只是
writebuffer[0] = (char) c;//强制转换
也查了下资料。java的开发者在2003年就说了3点
1、为了接收-1或eof等字符集外数值的可能情况
2、为了接收unicode 3.1版之后超16bit扩展字符的可能情况
3、为了兼容,保留int输入,很难改了。
但我个人看,头2点至今并没有用上半点(有源码印证)。
只有第三点因为兼容而保留是唯一实际的成因。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯