2016-04-22 12 views
0

新しいXML要素 'Organization'を作成中に、エンティティéのようなエンティティの問題がXMLエスケープ文字のためéに変換されました。以下はXMLでのエンティティの問題新しい要素ノードの作成

私はxmlファイル内

Centre de Recherche sur L' Epidemiologie des Désastres

として変換上記の文字列に新しい要素 '組織'

Centre de Recherche sur L' Epidemiologie des Désastres

を作成するために解析されている文字列です。

XMLファイルで

期待される結果が

Centre de Recherche sur L' Epidemiologie des Désastres

で誰も私はこのから抜け出すのを助けることができますか?

はリチャードの要求ごととして、ここ

から編集 enter image description here

をスナップ、以下の私は、あなたが&を追加したい場合は、

XmlDocument document = new XmlDocument(); 
document.Load(path); 
XmlNode newnode = document.CreateNode(XmlNodeType.Element, "affiliation", document.DocumentElement.NamespaceURI); 
XmlElement elem = document.CreateElement("Testing", document.DocumentElement.NamespaceURI); 
elem.InnerText = "Centre de Recherche sur L' Epidemiologie des Désastres"; 
newnode.AppendChild(elem); 
+0

使用しているコードを表示してください(.NETには少なくともXMLを書き込む4つの方法があります)。 – Richard

+0

@リチャード、私はコードを追加しました。私がやっていることは、既存のXMLファイルを開いて新しいノード所属と新しい要素組織 –

答えて

0

を追っ<か方法があります>〜XMLテキストコンテンツ(属性値を含む)エンコードされている必要があります(そうでない場合は、それぞれエンティティの開始、開始タグ、要素タグ、または要素タグの末尾と混同されます)。

これは正しい動作のようです。リテラル&を追加してエンコードします。 XMLパーサーでXMLを読むと、XMLテキストの&amp;&に変換されます。

InnerTextを設定すると、すでにXMLエンコードされたテキストがエンティティによって判断されているように見えます。そのため、まずそのテキストをデコードする必要があります。

+0

を作成し、その文字列をデコードしてエンティティを文字列から削除した場合です。私はXMLでそのエンティティを保持したいです –

+0

@Karthick申し訳ありませんが、あなたは言い換えることができます。 (要素のテキストを '"&"'に設定すると、XMLテキストの中に '' & ''が表示されることを覚えておいてください。 – Richard

関連する問題