Кодировка в XML
От: wessen  
Дата: 14.09.04 06:31
Оценка:
Создаю XML вот таким способом

DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
doc = builder.newDocument();
// и т.д.

по умолчанию он ставит кодироку UTF-8(<?xml version="1.0" encoding="UTF-8"?>) как туда свою кодировку засандалить?
Re: Кодировка в XML
От: Аноним  
Дата: 14.09.04 06:58
Оценка:
Здравствуйте, wessen, Вы писали:

W>Создаю XML вот таким способом


W>
W>DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
W>DocumentBuilder builder = factory.newDocumentBuilder();
W>doc = builder.newDocument();
W>// и т.д.

W>

W>по умолчанию он ставит кодироку UTF-8(<?xml version="1.0" encoding="UTF-8"?>) как туда свою кодировку засандалить?

DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document doc = builder.newDocument();

Transformer transformer = TransformerFactory.newInstance().newTransformer();
transformer.setOutputProperty(OutputKeys.ENCODING, "ANSI");

transformer.transform(new DOMSource(doc), new StreamResult(new FileOutputStream("my.xml")));


кажется так
Re[2]: Кодировка в XML
От: Аноним  
Дата: 14.09.04 10:31
Оценка:
А>
А>DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
А>DocumentBuilder builder = factory.newDocumentBuilder();
А>Document doc = builder.newDocument();

А>Transformer transformer = TransformerFactory.newInstance().newTransformer();
А>transformer.setOutputProperty(OutputKeys.ENCODING, "ANSI");

А>transformer.transform(new DOMSource(doc), new StreamResult(new FileOutputStream("my.xml")));
А>


А> кажется так


Спасибо, именно так.
Метод
public abstract void setOutputProperty(java.lang.String name, java.lang.String value)
throws IllegalArgumentException
действительно рулит. Только вот где можно посмотреть все варианты значений параметров name and value???
Re[3]: Кодировка в XML
От: Аноним  
Дата: 14.09.04 11:28
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Спасибо, именно так.

А>Метод
А>
А>public abstract void setOutputProperty(java.lang.String name, java.lang.String value)
А>throws IllegalArgumentException
А>
действительно рулит. Только вот где можно посмотреть все варианты значений параметров name and value???


в JavaDoc'ах что идут с Java2SE SDK все это есть ( <каталог SDK>\docs\api\javax\xml\transform\OutputKeys.html )
Re[4]: Кодировка в XML
От: Аноним  
Дата: 14.09.04 11:59
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Здравствуйте, Аноним, Вы писали:


А>>Спасибо, именно так.

А>>Метод
А>>
А>>public abstract void setOutputProperty(java.lang.String name, java.lang.String value)
А>>throws IllegalArgumentException
А>>
действительно рулит. Только вот где можно посмотреть все варианты значений параметров name and value???


А>в JavaDoc'ах что идут с Java2SE SDK все это есть ( <каталог SDK>\docs\api\javax\xml\transform\OutputKeys.html )

спасибо еще раз
Re[5]: Кодировка в XML
От: andpar  
Дата: 03.06.06 14:16
Оценка:
Делаю подобным образом, только указываю кодировку windows-1251. Когда стояла java 1.4.2 все было прекрасно. Поставил java 1.5.0_06. Теперь русские буквы заменяются их числовым значением, т.е. xml приобретает такой вид:
<string key="& # 1057;& # 1087;" value="& # 1057;& # 1087;"/>

Пробелы между & и # поставил сам, чтобы они в посте не заменились на обычные символы.
Из-за чего такое происходит и как это починить?
Re[6]: Кодировка в XML
От: Аноним  
Дата: 05.06.06 06:39
Оценка:
Здравствуйте, andpar, Вы писали:

A>Делаю подобным образом, только указываю кодировку windows-1251. Когда стояла java 1.4.2 все было прекрасно. Поставил java 1.5.0_06. Теперь русские буквы заменяются их числовым значением, т.е. xml приобретает такой вид:

A><string key="& # 1057;& # 1087;" value="& # 1057;& # 1087;"/>

A>Пробелы между & и # поставил сам, чтобы они в посте не заменились на обычные символы.

A>Из-за чего такое происходит и как это починить?

были у меня похожие глюки. Получалось так из-за того, что в заголовке xml стояла кодировка например UTF-8, а сам файл был в windows-1251 или объявленная кодировка в заголовке и самого файла совпадала, но при чтении этого файла я указывал не правильную кодировку.
Re[7]: Кодировка в XML
От: andpar  
Дата: 05.06.06 09:39
Оценка:
А>были у меня похожие глюки. Получалось так из-за того, что в заголовке xml стояла кодировка например UTF-8, а сам файл был в windows-1251 или объявленная кодировка в заголовке и самого файла совпадала, но при чтении этого файла я указывал не правильную кодировку.

У меня делается так: считывается xml-файл, а потом он сохраняется без каких-либо изменений.
В исходном файле в заголовке стоит windows-1251. Кодировка, вроде, правильная (в Far'е Win — windows-1251?).
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.