Kindly Solve this UTF-16 problem 2003-02-07 - By Subhasis Sanyal
> Hi, > We have been trying hard to create a UTF-16 xml document. We have > tried the following code: > As you can see, we have tried to set a feature to allow java-encoding, but > it is not working. The command line argument to the > program is a xml filename.We are creating a Unicode format xml, with the > encoding header set to UTF-16, and sending it to the > program. We are using the docToStr() function function to print the > convert the document object to a string, and display it on the > command prompt. However, the printed output shows the encoding to be: > UTF-8. > > Can you help on this issue? Is it a problem in the DOMParser itself, or > the Transform API (in the docToStr() function is printing this > wrong?) We have also tried the > org.apache.xerces.jaxp.DocumentBuilderFactoryImpl class for XML parsing, > and that is also giving us the same result. > > ************************************************************************** > ******************************************************************* > > import javax.xml.parsers.DocumentBuilder; > import javax.xml.parsers.DocumentBuilderFactory; > import org.w3c.dom.Document; > import org.apache.xerces.parsers.DOMParser; > import javax.xml.transform.Transformer; > import javax.xml.transform.TransformerFactory; > import javax.xml.transform.dom.DOMSource; > import javax.xml.transform.stream.StreamResult; > import java.io.StringWriter; > > public class SchemaTest2 > { > public static void main(String[] args) > { > try > { > DOMParser p=new DOMParser(); > > > System.out.println(p.getFeature("http://apache.org/xml/features/allow-java > -encodings")); > > > p.setFeature("http://apache.org/xml/features/allow-java-encodings", true); > > > System.out.println(p.getFeature("http://apache.org/xml/features/allow-java > -encodings")); > > p.parse(args[0]); > > Document doc=p.getDocument(); > > System.out.println(docToStr(doc)); > } > catch(Exception e) > { > e.printStackTrace(); > } > } > > > > public static String docToStr(Document doc) throws Exception > { > StringWriter writer = new StringWriter(4096); > DOMSource source = null; > String strXML = ""; > StreamResult result = null; > try > { > result = new StreamResult(writer); > source = new DOMSource(doc); > TransformerFactory m_tFactory=TransformerFactory.newInstance(); > Transformer m_transformer=m_tFactory.newTransformer(); > m_transformer.transform(source, result); > strXML = result.getWriter().toString(); > return strXML; > } > catch(Exception objEx) > { > objEx.printStackTrace(); > throw new Exception("XML_READ_ERROR"); > } > finally > { > // Release references > writer = null; > source = null; > strXML = null; > result = null; > } > } > > } > > > ************************************************************************** > ********************************************************* > > The XML file: > > <?xml version="1.0" encoding="UTF-16"?> > <Demo xmlns="http://www.demo.org/Demo" > xmlns:xsi="http://www.w3.org/2000/10/XMLSchema-instance" > xsi:schemaLocation="http://www.demo.org/Demo > Demo.xsd"> > <A>10</A> > <B>20</B> > </Demo> > > > ************************************************************************** > ********************************************************* > > > The XSD file: > > <?xml version="1.0"?> > <xsd:schema xmlns:xsd="http://www.w3.org/2000/10/XMLSchema" > targetNamespace="http://www.demo.org/Demo" > xmlns="http://www.demo.org/Demo" > elementFormDefault="qualified"> > <xsd:element name="Demo"> > <xsd:complexType> > <xsd:sequence> > <xsd:element name="A" type="xsd:integer"/> > <xsd:element name="B" type="xsd:integer"/> > </xsd:sequence> > </xsd:complexType> > </xsd:element> > > </xsd:schema> > > > > > <<SchemaTest2.java>> > > -- > Thanks & Regards, > > Subhasis Sanyal > CATS: Computer Associates (CA) - TCG Software (P) Ltd. > Bengal Intelligent Park, Building A, Block EP & GP, Sector V, > Salt Lake Electronics Complex, Kolkata, West Bengal, INDIA - 700091 > Phone: + 91 033 2357 5660 - 65 Extn. 136 (Office) > Fax: + 91 033 2357 5682 > Email: SubhasisS@(protected) > Visit us at: http://www.catsglobal.com
--------------------------------------------------------------------- To unsubscribe, e-mail: xerces-j-user-unsubscribe@(protected) For additional commands, e-mail: xerces-j-user-help@(protected)
|
|