我剛剛使用ISO-8859-1的Eclipse編碼編寫了一個java文件。 在這個文件中,我想創建一個字符串這樣那樣的(爲了創建一個XML的內容並把它保存到數據庫中):如何將字符「&」從ISO-8859-1保留爲UTF-8
// <image><img src="path_of_picture"></image>
String xmlContent = "<image><img src=\"" + path_of_picture+ "\"></image>";
在另一個文件中,我得到這個字符串,並創建一個新的String與此構造函數:
String myNewString = new String(xmlContent.getBytes(), "UTF-8");
爲了通過XML解析器可以理解,我的XML內容必須轉換爲:
<image><img src="path_of_picture"></image>
不幸的是,我無法找到如何令狀e xmlContent在myNewString中獲取此結果。 我試過兩種方法:
// First :
String xmlContent = "<image><img src=\"" + content + "\"></image>";
// But the result is just myNewString = <image><img src="path_of_picture"></image>
// and my XML parser can't get the content of <image/>
//Second :
String xmlContent = "<image><img src=\"" + content + "\"></image>";
// But the result is just myNewString = <image>&lt;img src="path_of_picture"&gt;</image>
你有什麼想法嗎?
你正在使用哪個xml解析器?我不認爲字符串中任何形式的'<' or '>'符號都會被任何一個解析器解析。 – rahulserver
這與文本編碼有什麼關係? &字符是ASCII,所以UTF-8和iso-8859-1的編碼方式相同,不存在混淆的可能性。 – Joni
你的問題更可能與字符轉義有關,而不是編碼。你知道[CDATA](http://stackoverflow.com/questions/2784183/what-does-cdata-in-xml-mean)嗎? – reto