[JavaScript] 將 CSV 檔案轉換成 JSON 資料

我們在拿到客戶提供的資料的時候常常會拿到 excel 檔案(這算幸福的)
至少我們可以簡單的利用一些軟體轉成 csv丟進資料庫裡處理。如果搭配個後端 API 基本上資料都不會是太大的問題可以做成 JSON 供 JavaScript 使用,但是如果在沒有後端或是資料庫的環境中呢?


首先我們先把 csv 檔案放到 server上 利用 $.get() 取得內容,接著將內容String 丟進我們待會會用到的 csvJSON 外掛 function 中。就會取得 JSON
但是這個時候的 JSON 還是 String 的形態所以還無法被解析,我們再加個 JSON.parse() 就可以拿到整個 JSON 物件摟!


function 來源:
https://gist.github.com/iwek/7154578

解決PHP JSON 中文亂碼的問題

通常我們在和其他廠商串接資料時的API除了使用XML製作外,JSON格式也是一個選項。
小灰狼通常會用XML作為API的介質,不過總是會遇到例外。

在PHP中要將資料轉換成JSON格式只需要用json_encode這個函示就可以搞定。
$arr = array('a'=>'小灰狼');
echo json_encode($arr);
不過,有趣的是,PHP中若是把中文做json_encode會變成亂碼。當然這也是有解藥的(不然我寫這個幹嘛)
$arr = urlencode(array('a'=>'小灰狼'));
echo urldecode(json_encode($arr));
這個原理很簡單,因為只有中文會讓json_encode出現亂碼,那麼我們先用urlencode讓字串不會有中文,當被編碼後的字串被JSON處理過後,再利用urldecode將剛剛的字串轉回來。

參考資料:

PHP 输出中文 JSON 字符串

留言

這個網誌中的熱門文章

利用 google MAP API 取得座標之間的距離

JavaScript 將 Array 和 Object 轉成 JSON

讓 PHP 接收 post 的 json 資料