C# 使用Newtonsoft.Json读写Json文件

原文地址:https://www.cnblogs.com/LicwStack/p/9522345.html

0.json文件

{
  "CAN": false,
  "AccCode": 4294901856,
  "Id": 768,
  "BPointMove": true,
  "L_BPointMoveDelay": "600",
  "R_BPointMoveDelay": "1000"
}

1.Read

try
            {
                StreamReader file = File.OpenText("config.json");
                JsonTextReader reader = new JsonTextReader(file);
                JObject jsonObject = (JObject)JToken.ReadFrom(reader);
                CAN_Communication = (bool) jsonObject["CAN"];
                AccCode = (uint) jsonObject["AccCode"];
                Id = (uint) jsonObject["Id"];

                // Configure Json
                BPointMove = (bool)jsonObject["BPointMove"];
                _classLeft.DelayBPointMove = (int)jsonObject["L_BPointMoveDelay"];
                _classRight.DelayBPointMove = (int)jsonObject["R_BPointMoveDelay"];
                file.Close();

            }
            catch
            {
                //MessageBox.Show("CAN卡配置有误!");
            }

2.Write

try 
                {
                    string json = File.ReadAllText("config.json");
                    dynamic jsonObj = Newtonsoft.Json.JsonConvert.DeserializeObject(json);
                    jsonObj["L_BPointMoveDelay"] = LBPointdelay.ToString();
                    string output = Newtonsoft.Json.JsonConvert.SerializeObject(jsonObj, Newtonsoft.Json.Formatting.Indented);
                    File.WriteAllText("config.json", output);
                }
                catch { }

猜你喜欢

转载自blog.csdn.net/qq_33380252/article/details/86088108