如何在Delphi XE5上將string
編碼爲UTF8 string
?當我試圖utf-8編碼字符串轉換爲string
型我失去了UTF8編碼:如何在Delphi XE5上將字符串編碼爲UTF8 WideString?
Result := string(Utf8Encode(ASource));
如何在Delphi XE5上將string
編碼爲UTF8 string
?當我試圖utf-8編碼字符串轉換爲string
型我失去了UTF8編碼:如何在Delphi XE5上將字符串編碼爲UTF8 WideString?
Result := string(Utf8Encode(ASource));
從重複的問題:
aUTF8Str := UTF8Encode(aClientDataSet.Fields[i].DisplayLabel);
SetCodePage(aUTF8Str, 0, False);
aUnicodeStr := UnicodeString(aUTF8Str);
Result := aUnicodeStr;
在強制RawByteString的代碼頁0之後,將'RawByteString'轉換爲'UnicodeString'就是要求丟失數據。 CodePage 0映射到用戶的默認操作系統代碼頁,可能是任何東西。如果您真的想將UTF-8八位字節原樣複製到「UnicodeString」字符中,則最好是手動循環查看「RawByteString」。 –
這裏沒有WideString實例。 –
什麼是'Result'的類型?那是'字符串',你使用Unicode德爾福?如果是這樣,那麼這是['這個問題']的可能重複(http://stackoverflow.com/q/2697843/960757)。 [我有一個接近的投票錘,並希望保持這個Q打開,因爲它不完整...] – TLama
德爾福XE5上的字符串 – Dmitry
@TLama:擺動錘子(或我會)。這確實是重複的。 –