Пятница, 25 Февраля 2005 г. 19:45
+ в цитатник
Короче сегодня полдня мучался, чтобы XML записывал в правильной кодировке Win-1251.
Добрые люди подсказали:
var pi = xmldoc.createProcessingInstruction("xml",
" version='1.0' encoding="win-1251");
xmldoc.appendChild(pi);
Ура, вот исходная статья:
To change the encoding that the XML DOM Save method uses, you need to create an XML declaration with an encoding attribute at the top of your document as follows:
var pi = xmldoc.createProcessingInstruction("xml",
" version='1.0' encoding='ISO-8859-1'");
xmldoc.appendChild(pi);
When you call the save method, you will then get an ISO-8859-1 encoded file as follows:
å
Now, be careful you don't let the XML property confuse you. The XML property returns a Unicode string. If you call the XML property on the DOMDocument object after creating the ISO-8859-1 encoding declaration, you will get the following Unicode string back:
å
Notice that the ISO-8859-1 encoding declaration is gone. This is normal. The reason it did this is so that you can turn around and call LoadXML with this string and it will work. If it does not do this, LoadXML will fail with the error message: "Switch from current encoding to specified encoding not supported."
-
Запись понравилась
-
0
Процитировали
-
0
Сохранили
-