java从txt文件中读取文件再输出到txt文件中,却只能输出一部分内容,为什么? java输入输出txt文件输出错误数据 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 楼主要学会贴代码public class Demo { public static void main(String[] args) { if (args.length == 0) { System.out.println("no args."); } }}像楼主的代码层级多,又没有排版,没法看。 吓了一跳,什么也没输出,仔细查看了一下,发现是楼主粗心了,看代码注释中指出的,要么显示的调用flush();要么调用close(),否则缓冲区中的内容可能无法写出,所以应该从这两个地方考虑代码的错误。import java.util.*;import java.util.regex.*;import java.io.*;public class FilteringData{ private List<String> list = new ArrayList<String>(); private String patternString = "[0-9]{4}-[0-9]{2}-[0-9]{2}"; private Pattern pattern = Pattern.compile(patternString); private Matcher matcher; private String temp; public void readFile(String fileName) { FileReader fileReader; BufferedReader reader = null; try { fileReader = new FileReader(new File(fileName)); reader = new BufferedReader(fileReader); }catch(FileNotFoundException e) { e.printStackTrace(); } try { while((temp=reader.readLine()) != null) { matcher = pattern.matcher(temp); if(matcher.lookingAt()) list.add(temp); } }catch (IOException e) { e.printStackTrace(); } } public void printData(String fileName) { try { FileWriter fileWriter = new FileWriter(new File(fileName)); BufferedWriter bufWriter = new BufferedWriter(fileWriter); for(int i=0; i<list.size(); i++) { bufWriter.write(list.get(i)); bufWriter.newLine(); } bufWriter.flush(); //这个地方写错了 bufWriter.close(); //这个地方写错了 }catch(IOException e) { e.printStackTrace(); } } public static void main(String[] args) { FilteringData filteringData = new FilteringData(); filteringData.readFile("text.txt"); filteringData.printData("OutoutText.txt"); System.out.println(filteringData.list ); }} 高手请进, java中如何给某一个类动态的添加getter()方法 Thinking In Java 的问题 linux初使用,安装官网最新jdk郁闷问题 与char相关的小问题 急救java.lang.IllegalStateException希望大家尽快帮我解决一下 Java处理bmp图像,怎样操作BMP位图的数据??(想对图像的各个像素进行操作) (可追加)在线等 在使用JFileChooser的保存文件问题 iterator()的作用? 请教问题!!!在线等 请教有关对象序列后回复的问题 关于JAVA对话框的布局问题。 java中如何从txt获取字符
public static void main(String[] args) {
if (args.length == 0) {
System.out.println("no args.");
}
}
}像楼主的代码层级多,又没有排版,没法看。
import java.util.*;
import java.util.regex.*;
import java.io.*;public class FilteringData
{
private List<String> list = new ArrayList<String>();
private String patternString = "[0-9]{4}-[0-9]{2}-[0-9]{2}";
private Pattern pattern = Pattern.compile(patternString);
private Matcher matcher;
private String temp; public void readFile(String fileName)
{
FileReader fileReader;
BufferedReader reader = null;
try
{
fileReader = new FileReader(new File(fileName));
reader = new BufferedReader(fileReader);
}catch(FileNotFoundException e)
{
e.printStackTrace();
}
try
{
while((temp=reader.readLine()) != null)
{
matcher = pattern.matcher(temp);
if(matcher.lookingAt())
list.add(temp);
}
}catch (IOException e)
{
e.printStackTrace();
}
} public void printData(String fileName)
{ try
{
FileWriter fileWriter = new FileWriter(new File(fileName));
BufferedWriter bufWriter = new BufferedWriter(fileWriter);
for(int i=0; i<list.size(); i++)
{
bufWriter.write(list.get(i));
bufWriter.newLine();
}
bufWriter.flush(); //这个地方写错了
bufWriter.close(); //这个地方写错了
}catch(IOException e)
{
e.printStackTrace();
}
} public static void main(String[] args)
{
FilteringData filteringData = new FilteringData();
filteringData.readFile("text.txt");
filteringData.printData("OutoutText.txt");
System.out.println(filteringData.list );
}}