C#実装Stringタイプとjson間の相互変換機能例
2439 ワード
この例では,C#実装Stringタイプとjson間の相互変換機能について述べる.皆さんの参考にしてください.具体的には以下の通りです.
コード#コード#
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#プログラム設計に役立つことを願っています.
////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#プログラム設計に役立つことを願っています.