2012-02-17 16 views
1

私はこのような文字列に基づいてXMLを生成しています:それは、ファイルを生成しXMLの文字エンコーディング

DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); 

DocumentBuilder builder; 
try { 
    builder = factory.newDocumentBuilder(); 

    // Use String reader 
    Document document = builder.parse(new InputSource(new StringReader(txt))); 

    TransformerFactory tranFactory = TransformerFactory.newInstance(); 
    Transformer aTransformer = tranFactory.newTransformer(); 
    Source src = new DOMSource(document); 
    Result dest = new StreamResult(new File("C:\\Users\\root\\Desktop\\xmlFileName.xml")); 
    aTransformer.transform(src, dest); 
} catch (Exception e) { 
    // TODO Auto-generated catch block 
    e.printStackTrace(); 
} 

を私は文字に問題を抱えています。例えば

、生成されたXMLのこの行:

<msg_detalhe>NÃ&#131;£o Ã&#131;© permitida a presenÃ&#131;§a de caracteres</msg_detalhe> 

は次のようになります。

XMLコンテンツ利用CDATAで
<msg_detalhe>Não é permitida a presença de caracteres</msg_detalhe> 
+0

コードはOKです。 'txt'はすでに壊れていますか? – McDowell

答えて

1

...

<![CDATA[content]]> 
+0

どうすればいいですか? – Gerep

+0

​​ – ggzone

+0

返信いただきありがとうございますが、この行を生成されたXMLに追加する方法がわかりません...私が言ったように、私は初心者です=) – Gerep

1

は設定してくださいプログラムを実行しているときのシステムプロパティ:-Dfile.encoding=UTF-8

+0

このプロパティを設定する方法は?ファイルがでUTF-8を保存される場合、そのいくつかのISOまたは何が取る場合 – Gerep

+0

だけでUTF-8を使用する代わり – ggzone

+0

'javaの

関連する問題