我有一些代码可以创建字典(哈希图)并计算所述文档中单词的频率。然后我有一些代码来创建字典中的值列表,并使用 collections.sort() 方法对它们进行排序,然后将前 10 个值打印到文本文件中。
我的问题是如何更改输出格式?目前,文本文件是这样的:
word = 1
word = 2
word = 3
word = 4
word = 5
我如何更改它的格式和结构,以便我可以在未来的应用程序中使用这些数据?比如D3?
我已经包含了创建列表并将其打印到文本文件的代码。
干杯
private static List<Map.Entry<String, Integer>> sortTheHashMap(HashMap<String, Integer> values) throws IOException {
Set<Entry<String, Integer>> set = values.entrySet();
List<Entry<String, Integer>> list = new ArrayList<Entry<String, Integer>>(set);
Collections.sort( list, new Comparator<Map.Entry<String, Integer>>()
{
public int compare(Map.Entry<String, Integer> o1, Map.Entry<String, Integer> o2)
{
return (o2.getValue()).compareTo(o1.getValue());
}
} );
for(Map.Entry<String, Integer> entry:list){
System.out.println(entry.getKey());
}
FileWriter fw;
File fileName;
fileName = new File("xxx.txt");
fw = new FileWriter(fileName, true);
int i = 0;
for (Map.Entry<String, Integer> counts : list) {
fw.write(counts + "\n\n");
i += 1;
if (i == 10) {
break;
}
}
fw.close();
return list;
}
相关分类