我剛纔用字符串生成器,創造了像 <?xml version="1.0" encoding="UTF-8"?> <xxxxxx> .. </xxxxxx>
開始標記很長的XML文檔,我想這個XML轉換爲ISO-8859-9編碼類型。 我該怎麼做? 或者任何人都建議我以另一種方式在C#中創建ISO-8859-9編碼類型xml。在C#將XML轉換UTF-8到ISO-8859-9
1
A
回答
3
我建議最可靠的方法是將其作爲XML文檔加載,然後使用編碼爲ISO-8859-9的TextWriter
進行保存。這樣你就不需要擔心任何特定於XML的問題。
你想如何輸出?在一個字符串,一個文件,一個字節數組?
5
由於編碼只有在文本被編碼到流中時纔有意義,我假設您要使用給定的編碼將文檔保存到文件中。這樣,編碼屬性將匹配文件的編碼。
嘗試:
using System.IO;
using System.Xml;
XmlDocument doc = new XmlDocument();
doc.LoadXml(xml);
Stream stream = File.Open(path, FileMode.Create, FileAccess.Write, FileShare.None);
XmlWriterSettings settings = new XmlWriterSettings();
settings.Encoding = Encoding.GetEncoding("ISO-8859-9");
XmlWriter writer = XmlWriter.Create(stream, settings);
doc.Save(writer);
0
感謝您的回答是真正的幫助我。 除此之外,我注意到下面的示例代碼。
string xml ="our created xml string";
HttpResponse Response = context.Response;
Response.Clear();
Response.ClearContent();
Response.ClearHeaders();
Response.ContentType = "application/xls";
Response.Charset = "UTF-8";
Response.ContentEncoding = Encoding.GetEncoding("UTF-8");
Response.AddHeader("content-disposition", "attachment; filename=text.xml") ;
Response.Output.Write(xml);
,如果我只是變化的響應和響應的 ContentEncoding物業的字符集屬性, 我能達到你的解決方案? ©只會改變這兩條線:
Response.Charset = "ISO-8859-9";
Response.ContentEncoding = Encoding.GetEncoding("ISO-8859-9");
它工作嗎?
相關問題
- 1. 轉換LATIN1到UTF8在C#
- 2. 將XML非法&char轉換爲utf8 - python
- 3. UTF8到CP1255轉換
- 4. C#ASP將參數轉換爲utf8
- 5. 將Unicode轉換爲UTF8
- 6. Python將latin1轉換爲UTF8
- 7. 將UTF8轉換爲ANSI?
- 8. 將utf8轉換爲1251
- 9. 將utf8轉換成windows-1256
- 10. 將UTF8轉換爲Windows-1252
- 11. 將Utf8轉換爲Unicode
- 12. 將latin1轉換爲UTF8
- 13. 如何在C/C++中將字符串從UTF8轉換爲Latin1?
- 14. 將utf8代碼點字符串轉換爲utf8 <U+0161>轉換爲utf8
- 15. C#將xaml轉換爲xml
- 16. 轉換ASCII到UTF8編碼
- 17. 從UTF8到ASCII的轉換
- 18. LATIN1到UTF8轉換問題
- 19. 轉換UINT8到字符UTF8
- 20. C#:將* .txt加載到RichTextBox並轉換爲UTF8
- 21. XML轉換到對象C#
- 22. XML到C#不能轉換
- 23. 將utf8mb4字符轉換爲utf8在php
- 24. 在vb.net中將EBCDIC轉換爲UTF8
- 25. 在bash中將stdout轉換爲utf8
- 26. 在SQL Server中將UTF8轉換爲uTF16
- 27. UTF8轉換
- 28. C#XML轉換
- 29. C#:XML轉換
- 30. 轉換XML URL鏈接到JSON在C#
這可能會奏效。 – 2009-06-08 13:31:18