[jdom-interest] Unicode (UTF-16) problem with the parse
Defeng Ma (Holyrood)
defeng.ma at ed.ac.uk
Mon Nov 26 03:03:35 PST 2001
Hi everyone,
recently I have developed a project with JDOM. Everything is fine until I got the request from the greek partner to support the Greek character in the Java application. After several testing and discussion with some people in Greek, we find out that I need use UTF-16 encoding system. The java application works fine with UTF-16 encoding. But I got the problem with the JDOM parse.
I used the Java application to capute the Greek characters in the user interface, and use XMLOutputter to write the xmlfile with the encoding UTF-16. However, when I use JDOM parse to read the file back, I got the problem.
Here is my code to read the xml back:
// code start here, fname is the name of the xml file which is created by the XMLOutputer
SAXBuilder builder = new SAXBuilder();
FileInputStream fis = new FileInputStream(fname);
InputStreamReader isr = new InputStreamReader(fis, "UTF-16");
Document anotherDocument = builder.build(isr);
return anotherDocument;
// code end
When try to run it, I got the following error message:
// error message here
org.jdom.JDOMException: Error on line 1: Character conversion error: "Missing byte-order mark" (line number may be too low).
at org.jdom.input.SAXBuilder.build(SAXBuilder.java:300)
at org.jdom.input.SAXBuilder.build(SAXBuilder.java:650)
at qdtJDom.readDocument(qdtJDom.java:134)
at qMetaJDom.<init>(qMetaJDom.java:33)
// error message end
Anyone has any idea how to solve this problem? By the way, when I changed the encoding system to UTF-8, the XMLoutputter and SAXBuilder can works without any error message, but all Greek characters will be replaced by the ??????.
thanks in advance for any kind of tips,
Defeng
University of Edinburgh
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://jdom.org/pipermail/jdom-interest/attachments/20011126/7dd6b5fa/attachment.htm
More information about the jdom-interest
mailing list