powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Обработка XML
15 сообщений из 15, страница 1 из 1
Обработка XML
    #33487190
Leha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем Здравствуйте!
Такая у меня проблема: делаю конвертацию XML который в "UTF-8" в "KOI8-R"
таким способом

TransformerFactory xformFactory = TransformerFactory.newInstance();
Transformer idTransform = xformFactory.newTransformer();
idTransform.setOutputProperty( OutputKeys.ENCODING, "KOI8-R");
Source input = new StreamSource( new StringReader( strXml));
Result output = new DOMResult( doc);
idTransform.transform( input, output);

и в результате ничего не происходит XML как был в "UTF-8" так и остался.

Как я выяснил нужно в библиотеку XSLT добавить поддержку "KOI8-R".
Если кто-нибуть с таким сталкивался подскажите как быть. Как это
добавляется.

Я использую JDK 1.5
...
Рейтинг: 0 / 0
Обработка XML
    #33487556
wessen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и в результате ничего не происходит XML как был в "UTF-8" так и остался.

а как ты определяешь, что документ так и остался в UTF-8?
...
Рейтинг: 0 / 0
Обработка XML
    #33487802
Glazz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кодировка то кстати меняется просто вместо символов печатаются ссылки вида:
НомерСимволаUTF
...
Рейтинг: 0 / 0
Обработка XML
    #33488489
Leha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
wessen и в результате ничего не происходит XML как был в "UTF-8" так и остался.

а как ты определяешь, что документ так и остался в UTF-8?

вывожу на экран или сохраняю в файл
...
Рейтинг: 0 / 0
Обработка XML
    #33488491
Leha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
GlazzКодировка то кстати меняется просто вместо символов печатаются ссылки вида:
НомерСимволаUTF

а у меня так всё и остаётся как-будто и перекодировки никакой небыло
...
Рейтинг: 0 / 0
Обработка XML
    #33489663
wessen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leha wessen и в результате ничего не происходит XML как был в "UTF-8" так и остался.

а как ты определяешь, что документ так и остался в UTF-8?

вывожу на экран или сохраняю в файл

покажи как сохраняешь в файл.
...
Рейтинг: 0 / 0
Обработка XML
    #33491208
Leha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
TransformerFactory xformFactory = TransformerFactory.newInstance();
Transformer idTransform = xformFactory.newTransformer();
idTransform.setOutputProperty( OutputKeys.ENCODING, "KOI8-R");
Source input = new StreamSource( new File( "001.xml"));
Result output = new StreamResult( new File( "002.xml"));
idTransform.transform( input, output);
...
Рейтинг: 0 / 0
Обработка XML
    #33491312
Glazz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
 package  Glaz.xml;


 import  javax.xml.parsers.DocumentBuilder; 
 import  javax.xml.parsers.DocumentBuilderFactory;  
 import  javax.xml.transform.*;
 import  javax.xml.transform.dom.*;
 import  javax.xml.transform.stream.*;
 import  org.w3c.dom.*;
 import  java.io.*;

 public   class  XMLTest{
  
  static  Document doc;
  
  public   static   void  main (String argv [])  throws  Exception{
  
  String sCodePage="windows-1251";
  DocumentBuilderFactory factory =DocumentBuilderFactory.newInstance();
  DocumentBuilder builder = factory.newDocumentBuilder();
  doc = builder.newDocument();
  
  Element root=doc.createElement("Root");
   Element childA=doc.createElement ("childA");
   childA.setTextContent("Русские символы UTF");
  root.appendChild(childA);
   Element childB=doc.createElement ("childB");
  childB.setAttribute("attributeXXX","Занчение аттрибута!");
  root.appendChild(childB);
  doc.appendChild (root);
  
  TransformerFactory tranFactory = TransformerFactory.newInstance(); 
  Transformer transformer = tranFactory.newTransformer();
  
  transformer.setOutputProperty(OutputKeys.METHOD, "xml");
  transformer.setOutputProperty(OutputKeys.VERSION,"1.0");
  transformer.setOutputProperty(OutputKeys.INDENT, "yes" );
  transformer.setOutputProperty(OutputKeys.ENCODING,sCodePage);
  
    
  System.out.println("transformer.getClass().getName()="+transformer.getClass().getName());
  System.out.println(transformer.getOutputProperties()); 
  Source src = new  DOMSource(doc);
  PrintWriter out =  new  PrintWriter( new  OutputStreamWriter(System.out,sCodePage));
  
  DOMSource source =  new  DOMSource(doc);
  File file =  new  File("c:\\test.xml");                       
  StreamResult result1 =  new  StreamResult( new  PrintWriter(file,sCodePage)); 
    transformer.transform(source, result1);
  
  Result dest =  new  StreamResult(out);
  transformer.transform(src, dest); 
  }  
}
...
Рейтинг: 0 / 0
Обработка XML
    #33491398
Leha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Glazz
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
 package  Glaz.xml;


 import  javax.xml.parsers.DocumentBuilder; 
 import  javax.xml.parsers.DocumentBuilderFactory;  
 import  javax.xml.transform.*;
 import  javax.xml.transform.dom.*;
 import  javax.xml.transform.stream.*;
 import  org.w3c.dom.*;
 import  java.io.*;

 public   class  XMLTest{
  
  static  Document doc;
  
  public   static   void  main (String argv [])  throws  Exception{
  
  String sCodePage="windows-1251";
  DocumentBuilderFactory factory =DocumentBuilderFactory.newInstance();
  DocumentBuilder builder = factory.newDocumentBuilder();
  doc = builder.newDocument();
  
  Element root=doc.createElement("Root");
   Element childA=doc.createElement ("childA");
   childA.setTextContent("Русские символы UTF");
  root.appendChild(childA);
   Element childB=doc.createElement ("childB");
  childB.setAttribute("attributeXXX","Занчение аттрибута!");
  root.appendChild(childB);
  doc.appendChild (root);
  
  TransformerFactory tranFactory = TransformerFactory.newInstance(); 
  Transformer transformer = tranFactory.newTransformer();
  
  transformer.setOutputProperty(OutputKeys.METHOD, "xml");
  transformer.setOutputProperty(OutputKeys.VERSION,"1.0");
  transformer.setOutputProperty(OutputKeys.INDENT, "yes" );
  transformer.setOutputProperty(OutputKeys.ENCODING,sCodePage);
  
    
  System.out.println("transformer.getClass().getName()="+transformer.getClass().getName());
  System.out.println(transformer.getOutputProperties()); 
  Source src = new  DOMSource(doc);
  PrintWriter out =  new  PrintWriter( new  OutputStreamWriter(System.out,sCodePage));
  
  DOMSource source =  new  DOMSource(doc);
  File file =  new  File("c:\\test.xml");                       
  StreamResult result1 =  new  StreamResult( new  PrintWriter(file,sCodePage)); 
    transformer.transform(source, result1);
  
  Result dest =  new  StreamResult(out);
  transformer.transform(src, dest); 
  }  
}


ну и что????????
так же как и у меня и результат тотже
...
Рейтинг: 0 / 0
Обработка XML
    #33491895
Glazz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
transformer.getClass().getName()=com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl
{indent=yes, version=1.0, encoding=windows-1251, method=xml}
<?xml version="1.0" encoding="windows-1251"?>
<Root>
<childA>Русские символы UTF</childA>
<childB attributeXXX="Занчение аттрибута!"/>
</Root>
...
Рейтинг: 0 / 0
Обработка XML
    #33491920
Leha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Glazztransformer.getClass().getName()=com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl
{indent=yes, version=1.0, encoding=windows-1251, method=xml}
<?xml version="1.0" encoding="windows-1251"?>
<Root>
<childA>Русские символы UTF</childA>
<childB attributeXXX="Занчение аттрибута!"/>
</Root>

а ты какую версию JDK используешь???
...
Рейтинг: 0 / 0
Обработка XML
    #33492095
Glazz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
java version "1.5.0_06"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_06-b05)
Java HotSpot(TM) Client VM (build 1.5.0_06-b05, mixed mode, sharing)

Кста это просто браузер заменяется ссылки на символы НомСимвола в моем посте на символы кирилицы ,) Посмотри исходный код этой страницы, гы.
...
Рейтинг: 0 / 0
Обработка XML
    #33493500
Leha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
и у меня таже версия. В чём же проблема..............??
я открываю файл в обычном текстовом редакторе.
Просто тот же код, но на JDK 1.4 работает как надо.
Может у меня JDK какой-нибудь урезанный?????
...
Рейтинг: 0 / 0
Обработка XML
    #33628186
Была таже проблема. Заменил Xerces на Xalan и все заработало
...
Рейтинг: 0 / 0
Обработка XML
    #33629051
wessen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Павел МартышевБыла таже проблема. Заменил Xerces на Xalan и все заработало

Xerces это парсер, Xalan это xslt процессор. Не знал, что они взаимозаменяемы :)
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Обработка XML
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]