Сериализация json в файл - C#

Узнай цену своей работы

Формулировка задачи:

Доброго времени суток. Возникла проблема. Делаю лаунчер для Minecraft и необходимо реализовать функцию профилей как в оригинальном лаунчере. Оф. лаунчер хранит профили в файле .json. Вот пример этого файла:
{
  "profiles": {
    "(Default)": {
      "name": "(Default)",
      "playerUUID": "demo-d5f792e26ff04978b76c2a8f2df351e6"
    },
    "1.7.2": {
      "name": "1.7.2",
      "lastVersionId": "1.7.10",
      "playerUUID": "demo-d5f792e26ff04978b76c2a8f2df351e6",
      "launcherVisibilityOnGameClose": "keep the launcher open"
    }
  },
  "selectedProfile": "1.7.10",
  "clientToken": "**********",
  "authenticationDatabase": {
    "demo-d5f792e26ff04978b76c2a8f2df351e6": {
      "accessToken": "**********",
      "userid": "**********",
      "username": "*******"
    }
  }
}
Где - "profiles" - место для профилей, а "1.7.2" - имя профиля, а дальше идут параметры этого профиля. И мне нужно поместить в "profiles"{ // тут профили } свой профиль. Вот сделал сериализацию с помощью Json.NET:
Dictionary<string, string> points = new Dictionary<string, string>
 {
     { "name", "1.7.1" },
     { "lastVersionId", "1.7.10" },
     { "playerUUID", "******" },
     { "launcherVisibilityOnGameClose", "keep the launcher open" },
 };
 
private void setProfile_Click(object sender, EventArgs e)
        {
            string json = JsonConvert.SerializeObject(points, Formatting.Indented);
            FileInfo fl = new FileInfo(@"C:/launcher_profiles.json");
            StreamWriter sw;
            sw = fl.AppendText();
            sw.WriteLine(json);
            sw.Close();
        }
Но данный блок помещается за пределы "profiles" {} и лаунчер его не видит. Прошу помощи.

Не по теме:

P.S Голову бы открутить создателю json

Решение задачи: «Сериализация json в файл»

textual
Листинг программы
String json;
var jss = new JavaScriptSerializer();
var users = jss.Deserialize<List<User>>(json);

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 4 из 5