從某網站采集到資料如下:
[{"MatchID":"1438052","EventType":"8","HomeOrAway":"1","OccurTime":"26","PlayerID":"125876","PlayerName":"\u827e\u6770"},{"MatchID":"1438052","EventType":"1","HomeOrAway":"2","OccurTime":"34","PlayerID":"27048","PlayerName":"\u8f9b\u514b\u83b1\u5c14 (\u52a9\u653b:\u798f\u96f7\u65af\u7279)"},{"MatchID":"1438052","EventType":"1","HomeOrAway":"1","OccurTime":"48","PlayerID":"101064","PlayerName":"\u6885\u65af\u9ad8\u592b (\u52a9\u653b:\u798f\u96f7\u65af\u7279)"},{"MatchID":"1438052","EventType":"1","HomeOrAway":"1","OccurTime":"49","PlayerID":"112707","PlayerName":"P.\u7279\u6b66\u9a6c\u897f (\u52a9\u653b:\u68ee\u9ad8)"},{"MatchID":"1438052","EventType":"1","HomeOrAway":"1","OccurTime":"69","PlayerID":"112707","PlayerName":"P.\u7279\u6b66\u9a6c\u897f (\u52a9\u653b:\u68ee\u9ad8)"},{"MatchID":"1438052","EventType":"3","HomeOrAway":"1","OccurTime":"70","PlayerID":"89241","PlayerName":"\u73c0\u65af\u5c3c\u53ef\u5a01"},{"MatchID":"1438052","EventType":"1","HomeOrAway":"2","OccurTime":"80","PlayerID":"131694","PlayerName":"\u5965\u5229\u7ef4\u5c14 (\u52a9\u653b:\u963f\u59c6\u65af\u7279\u6717)"},{"MatchID":"1438052","EventType":"3","HomeOrAway":"1","OccurTime":"82","PlayerID":"78524","PlayerName":"\u68ee\u9ad8"},{"MatchID":"1438052","EventType":"1","HomeOrAway":"2","OccurTime":"90","PlayerID":"36593","PlayerName":"L.\u683c\u96f7\u798f\u897f\u65af (\u52a9\u653b:N.\u6bd4\u987f)"},{"MatchID":"1438052","EventType":"3","HomeOrAway":"1","OccurTime":"90","PlayerID":"105004","PlayerName":"S.\u52a0\u8d3a\u534e\u514b"}]
其中有些資料為UNIcode編碼,使用strconv()函式轉換出來是亂碼,求助各位老大!
代碼如下
a1=STRCONV(FILETOSTR("AAAA.UNI"),6) &&原資料保存在AAAA.UNI檔案里
=strtofile(b1,"AAAA.txt") &&AAAA.TXT 保存轉換后的資料
執行后用記事本打開AAAA.TXT是亂碼
uj5u.com熱心網友回復:
WIN10系統,vfp9.0比如字串\u8f9b\u514b\u83b1\u5c14 ,使用網路上的UNICODE在線轉換工具可以得到正確的轉換結果是“辛克萊爾“
但是在VFP9.0中卻得不到正確的結果
代碼如下
str1=strconv([\u8f9b\u514b\u83b1\u5c14],6)
顯示str1得到一長串亂碼
uj5u.com熱心網友回復:
unicode 編碼本來就有兩種方式,分別是低位元組在前 和 高位元組在前\u 這種編碼方式剛好和 vfp 相反
messagebox(strconv( 0h9b8f + 0h4b51 + 0hb183 + 0h145c, 6))
才是你要的結果
uj5u.com熱心網友回復:
要自己去解釋這些太麻煩,最好裝入瀏覽器,讓瀏覽器去翻譯解釋uj5u.com熱心網友回復:
要下班了,給你寫一小段代碼,自己去修改;讓瀏覽器去解釋編碼,大概是這個思路表單上加一按鈕, Click 中帖下列代碼:
Local cc
Text to cc Noshow
... 帖你那一段長長的 json 字串
EndText
Text to cc Noshow Textmerge
<Script>
var cc = '<<cc>>';
document.title = cc;
</Script>
EndText
Thisform.AddObject('ie','olecontrol','Shell.Explorer')
With Thisform.ie as Shell.Explorer
.Navigate('about:blank')
.Document.write(cc)
cc = .Document.Title
EndWith
Thisform.RemoveObject('ie')
MessageBox(cc) && 看看瀏覽器解碼后的結果
uj5u.com熱心網友回復:
感謝版主指點,已經搞定了!轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/113867.html
標籤:VFP
上一篇:多個執行緒load infile插入表,同時select count(1)此表,導致統計一直處于sending data長達好幾千秒,如何解決
