2013-04-21 12 views
0

我提供了一個電子郵件API,允許您通過XML/JSON獲取某些電子郵件的內容。以XML呈現多個編碼

我的問題是,我有一個列表視圖,我想一次顯示多個電子郵件的文本。文本使用不同的編碼進行編碼。

我試着把特定的編碼文本,而不是XML的CDATA部分,所以它將被允許。但是現在我仍然獲得錯誤:

This page contains the following errors: 

error on line 45 at column 23: Input is not proper UTF-8, indicate encoding ! 
Bytes: 0x10 0x30 0x30 0x33 

我有各種各樣的這些電子郵件從ISO拉美等字符編碼是否有「通用」的編碼,我可以在XML編碼聲明不有錯誤?

JSON序列化工作正常。

+0

使用base64或其他東西對它們進行編碼,並使用utf-8作爲xml文件。 – gatto 2013-04-21 15:20:35

+1

你有沒有辦法知道輸入數據的編碼?在這種情況下,將其解碼爲unicode並在創建XML之前使用UTF-8對其進行編碼。 – ubik 2013-04-21 16:33:43

+0

@ubik這是一個很好的建議。我實際上會要求你把它作爲答覆,所以我可以試一試,並將其標記爲接受的答案,如果它解決了。 – 2013-04-21 20:48:03

回答

0

如果您有辦法瞭解傳入數據的編碼,只需將其解碼爲Unicode,然後在創建XML之前使用UTF-8對其進行編碼。

# e.g. latin1 -> utf-8 
text.decode('latin1').encode('utf-8')