我在MS Access 2003中包含HTML編碼字符串像這樣的表字段:如何HTML編碼的文本在MS Access解碼
Ανταγωνισμός παγκοσμίου επιπέδου στην κατάρτισ
我怎樣才能解碼成一個「正常的字符串」這一點,使用MS訪問?
在此先感謝。
這裏我到目前爲止。使用VB代碼提供here(順便說一句,我只能從IE7打開網頁,而不是從FF 3.5也不鉻2),我寫了以下功能:
Private Function UnicodeDecode(StringToDecode As String) As String
Dim TempAns As String
Dim CurChr As Integer
CurChr = 1
Do Until CurChr - 1 = Len(StringToDecode)
Select Case Mid(StringToDecode, CurChr, 2)
Case "&#"
TempAns = TempAns & Chr(Mid(StringToDecode, CurChr + 2, 3))
CurChr = CurChr + 5
Case Else
TempAns = TempAns & Mid(StringToDecode, CurChr, 1)
End Select
CurChr = CurChr + 1
Loop
UnicodeDecode = TempAns
End Function
現在,這一工程時提供的字符的十進制值如果我嘗試執行,例如:
Chr(338)
它失敗並顯示「Invalid procedure call or argument」。根據this reference,我想MS Access默認只支持ISOlat1標準。但是,我需要將Unicode字符轉換爲913以上的十進制值,即ISOgrk3。
有誰知道我該怎麼做到這一點?
再次感謝。
大衛,非常感謝,這是我需要的!現在我可以編寫VB代碼從表中讀取字段並存儲解碼後的值。 – Dejan 2009-09-08 07:54:03
我試過這段代碼,它完美的工作,但正如我在上面寫評論,我只是意識到我需要一個稍微不同的解碼。不是以「%」開頭的特殊字符,而是顯然是「&#」。 – Dejan 2009-09-08 11:20:25