如何解决如何在C#中的Winform tabPage上显示反序列化的Json结果
请在这里我需要你的帮助,我无法编写逻辑来在 Winforms C# 中的 tabPage 上显示反序列化的 JSON 结果
public Form1()
{
var path = @"C:\Users\elitebook\source\repos\ExamCBT\question.json";
string jsonFile = File.ReadAllText(path);
Question q = JsonConvert.DeserializeObject<Question>(jsonFile);
InitializeComponent();
}
jsonFile = tabPage2.ToString();
解决方法
您可以使用这些方法对 JSON 进行序列化和反序列化。只需下载 Newtonsoft.Json
NuGet 包。
static class FileHelper
{
public static void JsonSerialize(object obj,string fileName)
{
using (var sw = new System.IO.StreamWriter($"{fileName}.json"))
using (var jw = new Newtonsoft.Json.JsonTextWriter(sw))
{
var serializer = new Newtonsoft.Json.JsonSerializer();
jw.Formatting = Newtonsoft.Json.Formatting.Indented;
serializer.Serialize(jw,obj);
}
}
public static void JsonDeserialize(out string/*object,List<>,or something else*/ obj,string fileName)
{
using (var sr = new System.IO.StreamReader($"{fileName}.json"))
{
using (var jr = new Newtonsoft.Json.JsonTextReader(sr))
{
var serializer = new Newtonsoft.Json.JsonSerializer();
try
{
obj = serializer.Deserialize<string /*object,or something else...*/>(jr);
}
catch
{
obj = null;
}
}
}
}
}
您可以像这样将 JSON 数据添加到 TabPage
。
Label label = new Label(); // label can be textbox,button or something else...
FileHelper.JsonDeserialize(out string /*object,or something else...*/ data,"test");
label.Text = data //data type is string
tabPage1.Controls.Add(label);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。