GoogleReader解析準備
GoogleReaderからデータ取って、解析をしようとした。
なんだか、めんどくさそうだ。
とりあえず、JSON形式でスターがとれるので、それを取ろうと言うことにした。
C#のフォームアプリケーションでテスト。
その内容になります。
http://codezine.jp/article/detail/5868?p=2
を参考に
System.Runtime.Serializationコンポーネントを追加
(タブ:.NET) 2012の場合は”アセンブリ”の中
元のURL
.NET FrameworkでJSONデータを処理する (2/4):CodeZine
元
//(1)読み込むJSONデータ var jsonString = @"{""Address"":""Tokyo"",""Age"":32,""Name"":""Doi""}"; //(2)DataContractJsonSerializerをインスタンス化 var serializer = new DataContractJsonSerializer(typeof(FriendInfo)); //(3)JSONデータを文字列からバイト配列に変換 var jsonBytes = Encoding.Unicode.GetBytes(jsonString); //(4)バイト配列を読み込むMemoryStreamクラスを定義 var sr = new MemoryStream(jsonBytes); //(5)ReadObjectメソッドでJSONデータを.NETオブジェクトに変換 var obj = (FriendInfo)serializer.ReadObject(sr); //(6)変換したオブジェクトのプロパティ内容を確認 Console.WriteLine("Name:{0}, Address:{1}, Age:{2}", obj.Name,obj.Address,obj.Age);
変更
public class JSON { FriendInfo Finfo; public void GetData(){ System.IO.StreamReader jst = new System.IO.StreamReader( @"E:\programing_tempPlace\GoogleReaderProject_AnalyzeData\test.json" ); DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(FriendInfo)); byte[] jbi = Encoding.Unicode.GetBytes( jst.ReadToEnd() ); System.IO.MemoryStream memst = new System.IO.MemoryStream( jbi ); FriendInfo obj = (FriendInfo)ser.ReadObject(memst); Finfo = obj; //Console.Write("{0},{1}",obj.Name,obj.Address); } public string getFinfo(){ string str = Finfo.Name + ","+Finfo.Address; return str; } }
データの形式
{ "Name":"Doi", "Address":"Tokyo", "Age":32 }