2009-11-06 69 views
0

我從我的Flash應用程序中獲取了一些來自php腳本的信息。 Flash將其顯示爲:Radioart=Mia Frejman - Ett hjärta - Ett Hjärta閃存編碼問題

該字符串包含一些瑞典符號。我如何能夠正常輸出?

最好 弗拉基米爾

回答

0

好像你的PHP腳本的輸出不是UTF-8,閃光的默認編碼。 EartHjärta是utf-8字符串的拉丁語-1(ISO 8859-1)表示形式:Radioart = Mia Frejman - Etthjärta - EttHjärta。

因此,請確保php輸出utf-8中正確的所有內容,您的閃存也會正確顯示。

0

這似乎是一個編碼問題。在解析Flash中的xml文件時,我遇到了同樣的問題。問題是xml文件沒有保存在utf-8中。也許你應該:

  1. 檢查你的PHP編碼
  2. 檢查你的文本編輯器
  3. 的編碼是從數據庫裏的數據?檢查您的數據庫編碼
0

您的數據庫連接也可能是問題。 您可以通過運行該腳本檢查連接的編碼:

echo mysql_client_encoding($db); 

而且通過

mysql_set_charset("utf8", $db); 

設置(如果你正在運行的進程的MySQL的)

0

這是一個UTF-8如ISO-8859-1所示。如果您無法找出任何其他方式來執行此操作,則可以使用ByteArray將UTF-8解碼爲客戶端的字符串。這段代碼似乎做了正確的事情(tm)。

var ba: ByteArray = new ByteArray(); 
var receivedData: String = "Mia Frejman - Ett hjärta - Ett Hjärta"; 
for (var i: uint = 0; i < receivedData.length; i++) 
    ba.writeByte(receivedData.charCodeAt(i)); 
ba.position = 0; 
var decodedString: String = ba.readMultiByte(ba.length, "UTF-8");