0

私はこのXMLファイルを持っています

<test>&#13; &#xD; &lt;</test>

そして、私は以下のJavaコードでそれを変換しています.xsltファイルはxmlのコピーを作成するだけです.

public class XMLTransform {

    public static void main(String[] args) {

        try {
            StreamSource source = new StreamSource(new File("file.xml"));
            StreamSource stylesource = new StreamSource(new File("trans.xsl"));
            SAXTransformerFactory transformFactory = (SAXTransformerFactory) TransformerFactory.newInstance(); 
            Transformer transformer = transformFactory.newTransformer(stylesource);
            transformer.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, "no");         
            transformer.setOutputProperty(OutputKeys.INDENT, "yes"); 
            StreamResult result = new StreamResult(System.out);
            transformer.transform(source,result);
        }
        catch (Exception e) {
            e.printStackTrace();
        }

    }
}

私の問題は、Java が正規のキャリッジ リターン をアスキー文字である に置き換えることです。

改行の正規名を保持する方法について何か助けはありますか?

4

2 に答える 2

2

これらはまったく同じ文字であり、10進数形式()と16進数形式()(ASCII自体では何もしません)であることに気づき&#13ます&#xD

于 2012-01-10T17:10:17.980 に答える
1

SAXONトランスフォーマーはこの変更を行わないことがわかりました。あなたの答えに感謝します。

于 2012-02-02T10:39:31.243 に答える