当前位置: 代码迷 >> 综合 >> Json读取和保存
  详细解决方案

Json读取和保存

热度:59   发布时间:2024-02-02 13:37:53.0

读取Json文件

 public string  input_file;   //json文件路径

private string user_id ;

  private void  Read()
{
if (!File.Exists(input_file)) //判断文件是否存在
{

            return; 
}
try
{
StreamReader sr = new StreamReader(input_file, Encoding.UTF8);
string json = sr.ReadToEnd();
JsonData jd = JsonMapper.ToObject(json);
StaticClass.user_id = jd["user_id"].ToString();  //键对值赋值
}
catch
{

}
}

保存Json文件

public string  output_file   //json文件路劲

public void Save()
{

        //判断文件是否存在
if (!File.Exists(output_file))
{
FileStream fs = File.Create(output_file);//创建json文件
fs.Close();
}
else
{
File.Delete(output_file);//删除旧文件
FileStream fs = File.Create(output_file);//重新创建
fs.Close();
}
StringBuilder sb = new StringBuilder();
JsonWriter jw = new JsonWriter(sb);
jw.WriteObjectStart();
jw.WritePropertyName("user_id");
jw.Write(StaticClass.user_id);
jw.WritePropertyName("score");
jw.Write(StaticClass.score);
jw.WritePropertyName("time");
jw.Write(StaticClass.time);
jw.WriteObjectEnd();
//StreamWriter sw = new StreamWriter(output_file, false, Encoding.UTF8);//有BOM标签
StreamWriter sw = new StreamWriter(output_file, false, new UTF8Encoding(false));//没有标签
sw.Write(sb);
sw.Close();
}