首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法写入json变量c#获取错误

无法写入json变量c#获取错误
EN

Stack Overflow用户
提问于 2022-05-12 22:39:07
回答 1查看 38关注 0票数 -3

当我试图序列化或更新json文件时,会得到一个错误。我只想在json文件中更新"balance"的值,然后我得到了主意here.我似乎不能让它为我的项目工作。当我检查Users.json文件时,它不会改变。

这是我的代码:

Users.json

代码语言:javascript
复制
[
  {
    "id": 1,
    "username": "sachin",
    "password": "sachin1",
    "firstName": "Sachin",
    "lastName": "Karnik",
    "birthdate": "2011-6-14",
    "balance": 20000,
    "cardNumber": 12345
  },
  {
    "id": 2,
    "username": "dina",
    "password": "dina1",
    "firstName": "Dina",
    "lastName": "Meyers",
    "birthdate": "2012-8-20",
    "balance": 20000,
    "cardNumber": 23456
  },
  {
    "id": 3,
    "username": "andy",
    "password": "andy1",
    "firstName": "Andy",
    "lastName": "Rose",
    "birthdate": "2010-2-11",
    "balance": 20000,
    "cardNumber": 34567
  }
]

Menu.cs

代码语言:javascript
复制
public static void BankMenu(object? balance, object? user)
  {
  
   User[]? Users = JsonConvert.DeserializeObject<User[]>(Login.jsonResponse);
   int bal = Convert.ToInt32(balance);
   int money;
   
 try{
   money = ValidateAmountInput(bal, user);
       if (money <= bal && money != 0)
       {
        bal -= money;
        foreach (var usr in Users!)
        {
         if (usr.FirstName == user?.ToString())
         {
          usr.Balance = bal;

         }
        }
        var json = JsonConvert.SerializeObject(Users, Formatting.Indented);
        File.WriteAllText(Login.jsonResponse, json);
  }
   }
   catch(System.Exception e)
   {
      WriteLine(e);
   }

我的错误

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-05-12 22:56:30

你有个窃听器

代码语言:javascript
复制
  File.WriteAllText(Login.jsonResponse, json);

而不是ogin.jsonResponse,您必须使用文件路径

代码语言:javascript
复制
File.WriteAllText(<full file path\Users.json>, json);
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72222759

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档