2011-05-17 119 views
4

這可能嗎?我想檢查一個字符串是否是utf-8編碼的。檢查字符串是否爲UTF-8

更新:所以,問題是:我有一個PHP的Web服務。這個webservice有一個接收字符串的方法。我試圖將一個VB.NET JSON字符串傳遞給這個Web服務。 json_decode總是返回一個錯誤,說該字符串不是utf-8。如果我傳遞字符串並使用PHP utf8_encode進行轉換,則口音會出錯!我怎麼能解決這個問題?

+0

你的字符串是怎麼樣的? '字節[]'? – abatishchev 2011-05-17 19:27:55

+0

我做了這個,但我不知道它是否正常:http://stackoverflow.com/questions/6035380/vb-net-encode-string-to-utf-8。謝謝。 – thom 2011-05-17 19:29:28

+2

'System.String'永遠不會是UTF-8。它是UTF-16。只有字符串的字節表示可以是UTF-8。 – CodesInChaos 2011-05-17 19:50:27

回答

2

在C#中已有一個關於此的問題#in this thread。希望能幫助到你。

0

我認爲沒有任何第三方工具的唯一方法就是迭代字節數組,並測試它是否與已知編碼匹配。

發表評論@http://www.mobzystems.com/code/detecting-text-encoding.aspx

+0

本文僅適用於輸入字節[]具有前導碼設置的情況。當流的創建者「告訴」你編碼是什麼的時候,非常多。不回答OP問題。 – 2017-05-08 18:30:34