C#實現String類型和json之間的相互轉換功能示例
本文實例講述了C#實現String類型和json之間的相互轉換功能。分享給大家供大家參考,具體如下:
////Donet2.0 需要添加引用
// 從一個對象信息生成Json串
public static string ObjectToJson(object obj)
{
   return JavaScriptConvert.SerializeObject(obj);
}
// 從一個Json串生成對象信息
public static object JsonToObject(string jsonString,object obj)
{
   return JavaScriptConvert.DeserializeObject(jsonString, obj.GetType());
}
//Donet3.5自帶了DLL處理json串
//注意引用:System.Runtime.Serialization,System.ServiceModel.Web
代碼
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Runtime.Serialization;
using System.Runtime.Serialization.Json;
namespace CrjIIOfflineAccept.CrjIITools
{
  public class JsonTools
  {
    // 從一個對象信息生成Json串
    public static string ObjectToJson(object obj)
    {
      DataContractJsonSerializer serializer = new DataContractJsonSerializer(obj.GetType());
      MemoryStream stream = new MemoryStream();
      serializer.WriteObject(stream, obj);
      byte[] dataBytes = new byte[stream.Length];
      stream.Position = 0;
      stream.Read(dataBytes, 0, (int)stream.Length);
      return Encoding.UTF8.GetString(dataBytes);
    }
    // 從一個Json串生成對象信息
    public static object JsonToObject(string jsonString, object obj)
    {
      DataContractJsonSerializer serializer = new DataContractJsonSerializer(obj.GetType());
      MemoryStream mStream = new MemoryStream(Encoding.UTF8.GetBytes(jsonString));
      return serializer.ReadObject(mStream);
    }
  }
}
PS:關于json操作,這里再為大家推薦幾款比較實用的json在線工具供大家參考使用:
在線JSON代碼檢驗、檢驗、美化、格式化工具:
http://tools.jb51.net/code/json
JSON在線格式化工具:
http://tools.jb51.net/code/jsonformat
在線XML/JSON互相轉換工具:
http://tools.jb51.net/code/xmljson
json代碼在線格式化/美化/壓縮/編輯/轉換工具:
http://tools.jb51.net/code/jsoncodeformat
在線json壓縮/轉義工具:
http://tools.jb51.net/code/json_yasuo_trans
更多關于C#相關內容還可查看本站專題:《C#字符串操作技巧總結》、《C#常見控件用法教程》、《WinForm控件用法總結》、《C#程序設計之線程使用技巧總結》、《C#中XML文件操作技巧匯總》、《C#數據結構與算法教程》、《C#數組操作技巧總結》及《C#面向對象程序設計入門教程》
希望本文所述對大家C#程序設計有所幫助。
您可能感興趣的文章
- 01-10C#實現txt定位指定行完整實例
 - 01-10WinForm實現仿視頻播放器左下角滾動新聞效果的方法
 - 01-10C#實現清空回收站的方法
 - 01-10C#實現讀取注冊表監(jiān)控當前操作系統已安裝軟件變化的方法
 - 01-10C#實現多線程下載文件的方法
 - 01-10C#實現Winform中打開網頁頁面的方法
 - 01-10C#實現遠程關閉計算機或重啟計算機的方法
 - 01-10C#自定義簽名章實現方法
 - 01-10C#文件斷點續(xù)傳實現方法
 - 01-10winform實現創(chuàng)建最前端窗體的方法
 


閱讀排行
本欄相關
- 01-10C#通過反射獲取當前工程中所有窗體并
 - 01-10關于ASP網頁無法打開的解決方案
 - 01-10WinForm限制窗體不能移到屏幕外的方法
 - 01-10WinForm繪制圓角的方法
 - 01-10C#實現txt定位指定行完整實例
 - 01-10WinForm實現仿視頻播放器左下角滾動新
 - 01-10C#停止線程的方法
 - 01-10C#實現清空回收站的方法
 - 01-10C#通過重寫Panel改變邊框顏色與寬度的
 - 01-10C#實現讀取注冊表監(jiān)控當前操作系統已
 
隨機閱讀
- 01-11ajax實現頁面的局部加載
 - 08-05DEDE織夢data目錄下的sessions文件夾有什
 - 01-10C#中split用法實例總結
 - 01-10delphi制作wav文件的方法
 - 01-10SublimeText編譯C開發(fā)環(huán)境設置
 - 08-05織夢dedecms什么時候用欄目交叉功能?
 - 01-10使用C語言求解撲克牌的順子及n個骰子
 - 04-02jquery與jsp,用jquery
 - 01-11Mac OSX 打開原生自帶讀寫NTFS功能(圖文
 - 08-05dedecms(織夢)副欄目數量限制代碼修改
 


