我是java编程的新手并且已经尝试了最长的时间来使以下代码工作但是虽然程序运行良好我似乎没有看到文本文件中的任何输出我将输出重定向到。如果有人能帮助我,我会非常感激。 以下是整个代码。我遇到的问题是只有一行被写入文本文件,我在任何时间点只有一行文件。我知道这与循环和每次重新初始化的对象有关,但我不知道如何克服这个问题,我知道这将成为一个非常基本的错误。但我现在看不到它,所以任何帮助都会非常感激。感谢所有已经尝试过帮助的人,您的建议非常有用。
PrintStream out;
for(int count = 0; count<list2.size(); count++)
{
String originalString = list2.get(count);
try {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String readLine = br.readLine();
out = new PrintStream(new FileOutputStream("/Users/xyz/Desktop/metaDataFormatted.txt"));
System.out.println(readLine);
System.setOut(out);
//out.flush();
//out.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
System.out.println("Error During Reading/Writing");
}
System.out.println(count+" >");
//the following line is a method from another class which produces all the output on standard out.
md.getHomePageLinks(originalString);
}
答案 0 :(得分:2)
尝试在关闭流之前调用System.out.println(data)
。
System.out.println(readLine);
System.setOut(out);