如何在asp.net中将json文件转换为用户定义xml格式 [英] how to convert a json file to user define xml format in asp.net

查看:64
本文介绍了如何在asp.net中将json文件转换为用户定义xml格式的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

大家好,





请指导我如何在asp.net中将json文件转换为用户定义的xml格式。

解决方案

将JSON解析为某些数据结构并将其序列化为XML。请注意,问题不明确,解决方案可能不同(不仅仅是解决方案的方法,而是结果)。



最好的方法是使用Data Contract,但这种可能性取决于您给定的JSON模式(如果您无法更改它)。请参阅:

https:// msdn .microsoft.com / zh-CN / library / ms733127%28v = vs.110%29.aspx [ ^ ],

https://msdn.microsoft.com/en-us/library/system.runtime.serialization .json.datacontractjsonserializer%28v = vs.110%29.aspx [ ^ ](JSON),

https://msdn.microsoft.com/en-us/library/system.runtime。 serialization.datacontractserializer%28v = vs.110%29.aspx [ ^ (XML)。



其他可能性减少到你自己的解析和解析。在JSON部分,请看我过去的答案:

haw从Cloudant(json文档)获取数据 [ ^ ],

如何将多级json数据转换为C#对象? [ ^ ],

如何将对象类型转换为C#类对象类型 [ ^ ]。



在XML部分,.NET FCL提供了几种方法。这是我对它们的简短概述:



  1. 使用 System.Xml.XmlDocument 类。它实现了DOM接口;如果文档的大小不是太大,这种方式是最简单和最好的。
    参见 http://msdn.microsoft.com/en-us/library/system.xml.xmldocument.aspx
  2. 使用类 System.Xml .XmlTextWriter System.Xml.XmlTextReader ;这是最快的阅读方式,特别是你需要跳过一些数据。
    参见 http://msdn.microsoft.com/en-us/library/system.xml.xmlwriter.aspx http://msdn.microsoft.com/en-us/library/system.xml.xmlreader.aspx
  3. 使用类 System.Xml.Linq.XDocument ;这是类似于 XmlDocument 的最合适的方式,支持LINQ to XML Programming。
    参见 http://msdn.microsoft.com/en-us/library/system.xml.xmldocument.aspx http://msdn.microsoft.com/en-us/library/bb387063.aspx




  4. 祝你好运,

    -SA


Hi all,


Please guide me the how to convert a json file to user defined xml format in asp.net.

解决方案

Parse JSON into some data structure and serialize it as XML. Note that the problem is ambiguous, the solutions can be different (not just the methods of solutions, but the results).

The best method would be using Data Contract, but this possibility depends on what is your given JSON schema (in case you cannot change it). Please see:
https://msdn.microsoft.com/en-us/library/ms733127%28v=vs.110%29.aspx[^],
https://msdn.microsoft.com/en-us/library/system.runtime.serialization.json.datacontractjsonserializer%28v=vs.110%29.aspx[^] (JSON),
https://msdn.microsoft.com/en-us/library/system.runtime.serialization.datacontractserializer%28v=vs.110%29.aspx[^] (XML).

Other possibilities a reduced to your own parsing and unparsing. On JSON part, please see my past answers:
haw to get data from Cloudant (json document)[^],
how to conver multi level json data to C# Object?[^],
How To Convert object type to C# class object type[^].

On XML part, .NET FCL offers several approaches. This is my short overview of them:


  1. Use System.Xml.XmlDocument class. It implements DOM interface; this way is the easiest and good enough if the size if the document is not too big.
    See http://msdn.microsoft.com/en-us/library/system.xml.xmldocument.aspx.
  2. Use the classes System.Xml.XmlTextWriter and System.Xml.XmlTextReader; this is the fastest way of reading, especially is you need to skip some data.
    See http://msdn.microsoft.com/en-us/library/system.xml.xmlwriter.aspx, http://msdn.microsoft.com/en-us/library/system.xml.xmlreader.aspx.
  3. Use the class System.Xml.Linq.XDocument; this is the most adequate way similar to that of XmlDocument, supporting LINQ to XML Programming.
    See http://msdn.microsoft.com/en-us/library/system.xml.xmldocument.aspx, http://msdn.microsoft.com/en-us/library/bb387063.aspx.



Good luck,

—SA


这篇关于如何在asp.net中将json文件转换为用户定义xml格式的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆