Ajax 板


LINE

各位好,在Google一直搜尋解答方法,但是一直都沒成果 所以來這邊請教一下問題: 我想把一個檔案的內容變成JSON格式 檔案內容: 1 中文 2 or 3 && 4 ABC 5 CD ... 想轉成JSON格式: {'1':'中文', '2' :'or', '3' :'&&', '4' :'ABC', '5' :'CD' ... } 有試過用replace所有的符號 但是會有出錯的狀況 感謝各位:) --



※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.132.199.232
1F:→ mmis1000:regex? 01/29 23:55
2F:→ mmis1000:如果是utf8,應該可以直接用regex處理 01/30 00:02
3F:→ mmis1000:big5的話,因為編碼區有部分跟低位符號重疊,會導致問題 01/30 00:04
4F:→ vanillastarp:感謝樓上回覆 可以問一下怎麼下regex嗎? (regexp苦手 01/30 01:07
5F:→ mmis1000:直接用regex取代http://jsfiddle.net/mmis1000/ue85r/1/ 01/30 01:27
6F:→ mmis1000:但可以的話,最好用內建的元件生成json,以免導致問題 01/30 01:29
7F:→ mmis1000:自己刻的話,一定要確保特殊符號都有被編碼,以免挖洞 01/30 01:30
8F:→ danny8376:這邊的話會建議先把當檔案轉成Object 01/30 03:52
9F:→ danny8376:然後再用JSON.stringify去轉成JSON 01/30 03:52
10F:→ danny8376:這樣問題會比較少 01/30 03:52
11F:推 hanhong:https://gist.github.com/hankwang/8701495 範例供參考 01/30 10:26
12F:→ vanillastarp:補充: 這個檔案是 utf-16 LE 的 (HEX頭兩組 FF FE 01/30 11:08
13F:推 mmis1000:如果空格數不確定,用split會有問題 01/31 17:03
最近因為跑出去玩 所以這段時間都閒置 感謝各位的意見 我已使用以下的方法: var fs = require('fs'), Iconv = require('iconv').Iconv; var box = {}; var buffer = fs.readFileSync(__dirname + '\\db\\text.txt'), iconv = new Iconv( "UTF-16", "UTF-8"); var result = iconv.convert(buffer).toString("utf8"); var jsonString = "{" var lines = result.split("\n"); for(var i = 0;i < lines.length - 1;i++){ var fields = lines[i].split("\t"); var tmp = parseInt(fields[0]); //例外名單 去除含有特殊符號 if((tmp == 2392)||(tmp == 2393)||(tmp == 2394)||(tmp == 2395)|| (tmp == 2811)||(tmp == 2832)||(tmp == 6425)|| (tmp == 6426)||(tmp == 6427)||(tmp == 6428)) continue; jsonString += '"' + parseInt(fields[0]) + '":"' + fields[1].substr(0,fields[1].length - 1) + '",'; } jsonString += '"99999":"none"}'; box = JSON.parse(jsonString); 感謝各位的幫助 ※ 編輯: vanillastarp 來自: 220.132.199.232 (02/04 18:53)
14F:→ mmis1000:給個小建議,用['1','2','3'].join('')會比'1'+'2'+'3' 02/05 00:29
15F:→ mmis1000:來得有效率,雖然少量資料應該差不了多少就是了 02/05 00:30







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:e-shopping站內搜尋

TOP