2016-07-12 20 views
0

JsonReaderWriterFactory.CreateJsonWriterのコード例を参考にして、外部DLLをインストールせずにXMLをJSONに変換してください。しかしthisなどのすべての例は、DataContractJsonSerializerを利用して、このようなXML変換:xmlをネイティブDLL(json)でjsonに変換する方法

"\"<temp>42<\\/temp>\"" 
私が本当に探しています何

代わりに、::

どうやら
{"temp":42} 

のようなJSONを生成するために

<temp>42</temp> 

を両方の出力はJSONですが、どのように後者の種類を取得できますか?

ところで、私の入力はXmlElementではなくXElementです。

私はすでに一種の素敵な作品反対の方法JsonReaderWriterFactory.CreateJsonReaderを、使用してXMLにJSONに変換するためのコードを発見し、DataContractJsonDeserializerまたはそのような何かを利用していません。だから、私はのサンプルコードをDataContractJsonSerializerなしで見つける必要があると思います。残念ながら、CreateJsonWriterのthisのようなMSDNページにはコードサンプルが表示されません。


アップデート:私はこの質問にあきらめてい

。どうやら、私はNewtonSoftのDLLに切り替える必要があります。

私の質問の目的は、サンプルのxmlデータファイルを変換するための変換をすばやく作成することでした。私の個人用Libには新しいツールを用意するのが得策です。今私はこの1つのxmlのためのオンライン変換ツールを使用します。

さらにJSONのことをやりたいのであれば、本当にNewtonsoftのDLLを入手する必要があることを指摘してくれてありがとう。


コメント:

可能重複質問に似
  • :私がやったように、それは魅力的に聞こえるが、それだけでは不可能であるという決定的な答えはありませんので、他の人が、何かをしようとした可能性が非常に高い

  • その他の一見重複した質問ほとんどの場合、NewtonsoftのDLLに焦点を当てていますが、私の質問はネイティブのDLLにあります。


重複:

はそう見えるが、私は、出力が正しいJSONのいくつかの間違った種類であることを指摘し、「便利な」JSONを取得するには、そのメソッドを呼び出す方法を求めます。

コメント者は、これがなぜ起こるのかについての詳細を指摘します。つまり、ネイティブDLLには制限があります。

+0

参照してください。 はまた、このarticleXDocumentについて

便利かもしれませんが、私は最初のネイティブDLLを試してみたいと思います。また、シリアライゼーションを使った例もありますが、私には間違った種類のjsonが与えられています。 – Roland

+0

JSON.NETだけではありません。受け入れられた答えにはJSON.NETソリューションが含まれています(これは最も単純なものです)が、他にも答えがあります。たとえば、これは.NET Frameworkのネイティブクラスを使用します:http://stackoverflow.com/a/32412316/3218692 –

+0

@YeldarKurmangaliyev私はこれを試しています。 System.Web.Scriptのリファレンスを探すだけです。 。 。 – Roland

答えて

0

jsonを使用してXML文書をJSONに変換できます。

http://www.newtonsoft.com/json/help/html/convertingjsonandxml.htm

+0

JsonReaderWriterFactory.CreateJsonWriterをネイティブDLLから使用することはできませんか? – Roland

+0

いいえ... JSON.Netは私たちの人生を楽にしてくれます... JsonReaderWriterFactoryは余分な作業が必要です..それはそれです – sawbeanraz

+0

Preferences、OK、しかしJsonReaderWriterFactoryがうまくいくならばしかし、マイクロソフトが動作しない場合、または必要なドキュメントが不足している場合、私は間違いなくJSON.Netに行く – Roland

1

ネット私はあなたがとにかくusing Newtonsoft.Json;を使うべきだと思います。 jsonで働くには、最も人気のある.netライブラリの1つと思っています。

そして、あなたはthis SO answer

// To convert an XML node contained in string xml into a JSON string 
XmlDocument doc = new XmlDocument(); 
doc.LoadXml(xml); 
string jsonText = JsonConvert.SerializeXmlNode(doc); 

// To convert JSON text contained in string json into an XML node 
XmlDocument doc = JsonConvert.DeserializeXmlNode(json); 

あなたがhereを見つけることができますいくつかのガイドを参照してくださいnuget

してインストールすることができます。おそらく、NewtonSoftからダウンロードしたDLLを使用する方法については非常に便利です。このSO answer

+0

これは 'Newtonsoft.Json; – Roland

+0

@Roland definitely – isxaker

関連する問題