2017-10-10 149 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的數據格式。 –

相關問題