java中如何从txt文件中一行一行读取汉字,再存到另一txt文件中
3个回答
展开全部
首先用FileReader fileReader=new FileReader(路径)来创建一个节点流,
然后用BufferedReader reader=new BufferedReader(fileReader),以BufferederReader处理流来包装这个节点流,然后调用 BufferedReader类里面的readLine()方法就可以一行一行地读了。
至于存到另一个txt文件中,
你把上面输入流读到的东西放到一个字符串Strng 里面,然后用FileWriter类建立对象,用它的write(String str)方法一次写到目标文件就可以了。
然后用BufferedReader reader=new BufferedReader(fileReader),以BufferederReader处理流来包装这个节点流,然后调用 BufferedReader类里面的readLine()方法就可以一行一行地读了。
至于存到另一个txt文件中,
你把上面输入流读到的东西放到一个字符串Strng 里面,然后用FileWriter类建立对象,用它的write(String str)方法一次写到目标文件就可以了。
更多追问追答
追答
这你先要告诉我,现在有什么跟你预期不一致的地方耶。。瞄了下你给楼上的留言,为啥上面你跟他说你只读到一行,下面你就不跟我说呢,这不公平= =。。。
你可以试下这样写:
String message="",temp;
while((temp=reader.readLine())!=null)
{
message+=temp;
}
不过行与行之间不会换行,因为每次读到的都是一行的内容,不含换行符,你可以在temp后面再加多个换行符。
另外错误不是应该用:System.err.println();吗,还有关闭的应该是上级的流,br和bw
来自:求助得到的回答
展开全部
BufferedReader 一行一行的读
PrintWriter 一行一行的写
try(BufferedReader reader = Files.newBufferedReader(Paths.get("D:\\Temp","天下无双.txt"), Charset.forName("GBK"));
PrintWriter writer = new PrintWriter("D:\\Temp\\天下无双U.txt", "UTF-8")){
for(String line = reader.readLine(); line != null; line = reader.readLine()){
writer.println(line);
}
}catch(IOException xe){
System.err.println(xe.getMessage());
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
直接bufferedReader readLine 方法就行了啊?这个和汉字不汉字没关系啊
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询