Я реализовал следующий код в своем приложении Java
//create string from xml tree
StringWriter sw = new StringWriter();
StreamResult result = new StreamResult(sw);
DOMSource source = new DOMSource(doc);
trans.transform(source, result);
String xmlString = sw.toString().replaceAll("&[^;]+?;", ""); //Replace invalid HTML characters
//print xml
System.out.println("The XML is:\n\n" + xmlString);
OutputStream out = new FileOutputStream(dir.getSearchFileOutputDirectory() + "\\" + "output.xml");
//Write the XML to disk
out.write(xmlString.getBytes("ISO-8859-1"));
out.close();
Теперь, если я выполню это в Netbeans, файл XML будет отлично отображаться в Chrome, IE и Firefox. Однако после того, как я очистил и собрал код, а затем запустил автономный файл JAR, браузеры сообщают об ошибках кодировки в файле и не могут его отобразить.
Дело в том, что строки, в которых они терпят неудачу, на самом деле не содержат ничего необычного, только стандартные символы ASCII, которые я вижу.
Может ли кто-нибудь пролить свет на то, почему это может происходить? Завтра я должен продемонстрировать код, и теперь я в панике, почему он вдруг делает эту странную вещь ...
Любая информация будет принята с благодарностью.
Спасибо
Tony