[ 開放資料part1 ] [android] 利用EXCEL檔案格式來取得開放資料吧

EXCEL除了可以運算、紀錄資料外,由於EXCEL也可以儲存資料並表示資料與資料的二維關聯(甚至三圍),因此開放資料常常利用EXCEL的檔案格式(ex.xls檔或是csv檔等)來進行儲存與分享。

所以我們在這種撞快下就可以在APP開發時就直接下載並轉化為sqlite的資料庫,直接將資料綁在APP內,適合用於不需要常常更新的狀況,像是停車場的地理位置(像是名稱、地址、經緯度、收費標準等等)

那接下來我們就來看看該怎麼利用EXCEL檔在android studio中取得開放資料吧!!

Step1.下載所需的EXCEL開放資料檔
我們可以在政府開放平台中,找到自己所需要的資料檔
以下方圖為例,新竹市公有停車場相關資訊

我們需要將檔案下載為CSV檔案


Step1-1.轉檔為CSV檔
若所需的資料沒有CSV檔,則可以透過其他檔案轉檔為CSV
下圖為xls檔,利用另存新檔,轉檔為CSV檔


Step2.建立Assets資料夾
我們需要將剛剛所下載的CSV檔放於Assets資料夾中,
回到Android studio ,在左方APP的位置按著右鍵-NEW-Folder-Assets Folder
這樣就成功建立完成了!



Step3.將CSV檔匯入Assets資料夾內
1.在Assets的位置上按著右鍵-點選Reveal In Finder



2.此時便跳出main的資料夾,並點選Assets


3.將剛剛的CSV檔放入裡面


很好!現在CSV檔就被我們匯入了喔~


Step3.在MainActivity中進行讀取檔案
1.回到Android studio中,開啟MainActivity ,加入程式碼來讀取檔案囉

InputStreamReader is = new InputStreamReader(getAssets().open("自己CSV的檔名.csv"));



2.這時候看到紅色恐怖線線,別緊張!讓我們按下左方協助我們的紅色小燈泡


3.程式碼就被改變成這樣了~



Step4.加入程式碼讀取EXCEL內容
BufferedReader reader =new BufferedReader(is);
reader.readLine();
String line;
while ((line=reader.readLine())!=null){
    //在這裡line是一行的文字,然後自行拆解}


PS.在這個方式是『local』處理,是不需要網路的喔




Step5.哼哼哼~這樣就成功了!
























留言

這個網誌中的熱門文章

[unity2D] 透過鍵盤進行上下左右移動

[unity 2D] 簡單認識button(上)