2017-10-10 150 views
0

我有一个电子表格类型的数据文件(制表符分隔的.txt),需要由Java程序读取并将值存储在数据结构中。这些数据表示两个城市之间的最短路径,如果路径不存在,则填入短划线( - )。哪一个数据结构将有助于存储这些值,以便进一步比较该程序;主要用于搜索算法?此外,我想在一个简单的GUI中打印第一列中列出的城市作为允许用户选择城市的下拉按钮?只有通过提取出来打印出城市的代码才行。 而且,这里的数据文件的外观:将电子表格类型数据从文件存储到Java中的数据结构中

  Port Col Minn Cali Flo 
Portland - 30 - 22 - 
Colorado 15 17 5 - - 
Minnesota 11 15 22 13 - 
California 8 - 9 - - 
Florida  11 - - 22 - 

由于这是一个制表符分隔的.txt文件,它看起来并不完美。

+1

这是怎么回事的数据被用来做什么?如果你只是打印它,最简单的方法就是把它保存为字符串,但是如果你在内部使用数组或列表可能有帮助 – phflack

+0

我会考虑类似于Map > ';你可能想把它包装在你自己的类中,以使它更易于使用。但是,正如所述,这取决于你将如何使用它。 –

+0

@James_D你能简单地阐述一下你的想法吗? –

回答

0

对于阅读文件,我宁愿将其重命名为.csv并使用标准csv阅读器之一。您通常可以将它们配置为使用其他分隔符,包括制表符。 这会在内存中为您提供一些类似电子表格的结构。你将能够得到每个城市的标题(城市)和距离地图状结构的列表。

这种方法编码少,阅读量少,但这就是真正的工作常常最终成为的样子,所以如果你能处理它,这是一个很好的做法。

例如CSV库:

https://commons.apache.org/proper/commons-csv/

http://opencsv.sourceforge.net/

+1

不需要重命名任何东西......它的存储格式不重要的文件扩展名... – kleopatra

+0

你是对的。大多数图书馆不关心扩展。我的意思很清楚,我想将文件视为类似csv的数据格式。 –

相关问题