#java #html-parsing #transformer #neko
#java #html-синтаксический анализ #transformer-модель #neko
Вопрос:
Я использую NekoHTML для анализа содержимого некоторого HTML-файла..
Все идет нормально, за исключением извлечения содержимого объекта Document в некоторую строку.
Я пробовал использовать
TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer();
DOMSource source = new DOMSource(doc);
StreamResult result = new StreamResult(writer);
transformer.transform(source, result);
Но, похоже, ничего не возвращается.
Комментарии:
1. Пожалуйста, определите, что такое «writer». FileWriter можно использовать для записи в файл, а StringWriter — для записи в строковый буфер
Ответ №1:
Проблема в том, что в Oracle App server 10.3.1.4 http://m-hewedy.blogspot.com/2011/04/oracle-application-server-overrides.html
Ответ №2:
Возможное решение:
//this nekohtml
DOMParser parser = new DOMParser();
parser.parse(archivo);
//this xerces
OutputFormat format = new OutputFormat(parser.getDocument());
format.setIndenting(true);
//print xml for console
//XMLSerializer serializer = new XMLSerializer(System.out, format);
//save xml in string var
OutputStream outputStream = new ByteArrayOutputStream();
XMLSerializer serializer = new XMLSerializer(outputStream, format);
//process
serializer.serialize(parser.getDocument());
String xmlText = outputStream.toString();
System.out.println(xmlText);
//to generate a file output use fileoutputstream instead of system.out
//XMLSerializer serializer = new XMLSerializer(new FileOutputStream(new File("book.xml")), format);
URL: http://totheriver.com/learn/xml/xmltutorial.html#6.2
Смотрите e) Сериализуйте DOM в FileOutputStream для генерации xml-файла «book.xml « .