-3

我已经计算了单词,现在在控制台中显示它。但我想将控制台输出写入文本文件。这个怎么做?

String[] wrds   = counter.getWords(WordCounter.SortOrder.BY_FREQUENCY);
int[] frequency = counter.getFrequencies(WordCounter.SortOrder.BY_FREQUENCY);        

int n = counter.getEntryCount();
for (int i=0; i<n; i++) 
{
    This should be written in text file///// System.out.println(frequency[i] + " " + wrds[i]+" "+ counter.getWordCount());
4

4 回答 4

2
String[] wrds   = counter.getWords(WordCounter.SortOrder.BY_FREQUENCY);
int[] frequency = counter.getFrequencies(WordCounter.SortOrder.BY_FREQUENCY);        
String texttoWrite = "";
int n = counter.getEntryCount();
for (int i=0; i<n; i++) 
{
    texttoWrite += frequency[i] + " " + wrds[i]+" "+ counter.getWordCount();
}
try{
 FileWriter fstream = new FileWriter("out.txt");
 BufferedWriter out = new BufferedWriter(fstream);
 out.write(texttoWrite);
 out.close();
 }catch (Exception e){
  System.err.println("Error: " + e.getMessage());
 }
}
于 2013-02-13T15:27:11.243 回答
0

使用文件对象打开一个文件。并写入文件而不是控制台(或两者都做)。关闭文件。真正的问题是什么?

于 2013-02-13T15:32:17.130 回答
0

这样的事情怎么样?

FileWriter fstream = new FileWriter(fileName);
BufferedWriter fbw = new BufferedWriter(fstream);
for (int i=0; i<n; i++) {
    fbw.write(frequency[i] + " " + wrds[i]+" "+ counter.getWordCount()+ "\n");
}
于 2013-02-13T15:26:37.233 回答
0

查看FileWriter

FileWriter fw = new FileWriter("path location");
fw.write(frequency[i]....);
fw.close();
于 2013-02-13T15:27:10.250 回答