與合做夥伴討論問題,說到的c++與c#數據的轉換調用,正好就說到了序列化與反序列化,一樣也可用於不一樣語言間的調用,作了基礎示例,做如下整理:c++
1 using System.Data; 2 using System.Drawing; 3 using System.Linq; 4 using System.Text; 5 using System.Threading.Tasks; 6 using System.Web.Script.Serialization; 7 using System.Windows.Forms; 8 9 namespace ConsoleApplication1 10 { 11 public partial class Form9 : Form 12 { 13 public Form9() 14 { 15 InitializeComponent(); 16 per(); 17 } 18 public string GetPersonInfo() 19 { 20 //實例化Person對象 21 Person per = new Person(); 22 per.Name = "lxx"; 23 per.Age = 28; 24 25 //Person對象per序列化爲json字符串ss 26 JavaScriptSerializer js = new JavaScriptSerializer(); 27 string ss = js.Serialize(per); 28 Console.WriteLine(ss);//運行後ss值爲:{"Name":"lxx","Age":28} 29 return ss; 30 } 31 32 /// <summary> 33 /// json字符串ss反序列化爲Person對象 34 /// </summary> 35 /// <returns></returns> 36 public Person per() 37 { 38 JavaScriptSerializer js = new JavaScriptSerializer(); 39 Person person = js.Deserialize<Person>(GetPersonInfo()); 40 return person; 41 } 42 } 43 44 /// <summary> 45 /// 定義一個可序列化的實體類(也能夠爲Structure) 46 /// </summary> 47 [Serializable()] 48 public class Person 49 { 50 public string Name { get; set; } 51 public int Age { get; set; } 52 } 53 }