基本信息
源码名称:C# 读写json文件数据到UI(通过泛型结构来实现)
源码大小:0.33M
文件格式:.rar
开发语言:C#
更新时间:2020-02-25
友情提示:(无需注册或充值,赞助后即可获取资源下载链接)
嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300
本次赞助数额为: 2 元×
微信扫码支付:2 元
×
请留下您的邮箱,我们将在2小时内将文件发到您的邮箱
源码介绍
通过System.Web.Script.Serialization库文件操作json的序列化和反序列化
通过System.Web.Script.Serialization库文件操作json的序列化和反序列化
using System; using System.Collections.Generic; using System.Windows.Forms; using System.Web.Script.Serialization; using System.IO; namespace prat3 { // /// <summary> /// 定义结构体 /// </summary> public struct Productsinfo { public string product_ProdName; public string product_ProdDate; public string product_BatchNo; public string product_ExpDate; } public partial class Form1 : Form { Productsinfo productinfo; List<Productsinfo> list1 = new List<Productsinfo>(); public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { } /// <summary> /// //JSON序列化,将List<T>转换为String /// </summary> /// <param name="list"></param> /// <returns></returns> private String JsonListToString(List<Productsinfo> list) { JavaScriptSerializer Serializerx = new JavaScriptSerializer(); string changestr = Serializerx.Serialize(list); return changestr; } /// <summary> /// 将Json数据写入文件系统 /// </summary> /// <param name="filepath"></param> /// <param name="writestr"></param> private void FileWrite(string filepath, string writestr) { //写入文件 FileStream fs = new FileStream(filepath, FileMode.OpenOrCreate); StreamWriter sw = new StreamWriter(fs); sw.Write(writestr); sw.Close(); fs.Close(); } /// <summary> /// 从文件中读取Json数据 /// </summary> /// <param name="filepath"></param> /// <returns></returns> private string FileRead(string filepath) { FileStream fs = new FileStream(filepath, FileMode.Open); StreamReader sr = new StreamReader(fs); string str = sr.ReadToEnd(); sr.Close(); fs.Close(); return str; } /// <summary> /// JSON反序列化,将List<T>转换为String /// /// </summary> /// <param name="str"></param> /// <returns></returns> private List<Productsinfo> StringToJsonList(string str) { JavaScriptSerializer Serializer = new JavaScriptSerializer(); List<Productsinfo> listinfo = Serializer.Deserialize<List<Productsinfo>>(str); return listinfo; } /// <summary> /// 文件加载 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void button1_Click(object sender, EventArgs e) { string filePath = Properties.Settings.Default.FilePath "\\ProductsInfo.json"; string newstr= FileRead(filePath); List<Productsinfo> listinfo = StringToJsonList(newstr); foreach (var item in listinfo) { textBox4.Text = item.product_ProdName; textBox1.Text = item.product_ProdDate; textBox2.Text = item.product_BatchNo; textBox3.Text = item.product_ExpDate; } } /// <summary> /// 文件保存 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void button2_Click(object sender, EventArgs e) { productinfo.product_ProdName = textBox4.Text; productinfo.product_ProdDate = textBox1.Text; productinfo.product_BatchNo = textBox2.Text; productinfo.product_ExpDate = textBox3.Text; list1.Add(productinfo); String str = JsonListToString(list1); string filePath = Properties.Settings.Default.FilePath "\\ProductsInfo.json"; FileWrite(filePath, str); MessageBox.Show("保存成功"); } } }