/// <summary> /// Запись в фаил /// </summary> /// <param name="data"> /// Список записываемых задач /// </param> public static void SaveToFile(DiaryTaskListContainer data, string filePath = "Standart") { if (filePath == "Standart") { filePath = Environment.CurrentDirectory.ToString() + @"\Diary.diary"; } using (StreamWriter file = File.CreateText(filePath)) { JsonSerializer serializer = new JsonSerializer(); serializer.Serialize(file, data); } }
/// <summary> /// Чтение из фаила /// </summary> /// <returns> /// Список задач /// </returns> public static DiaryTaskListContainer LoadFromFile(string filePath = "Standart") { if (filePath == "Standart") { filePath = AppDomain.CurrentDomain.BaseDirectory.ToString() + @"Diary.diary"; } try { using (StreamReader file = File.OpenText(filePath)) { JsonSerializer serializer = new JsonSerializer(); return((DiaryTaskListContainer)serializer.Deserialize(file, typeof(DiaryTaskListContainer))); } } catch (System.IO.FileNotFoundException) { var project = new DiaryTaskListContainer(); SaveLoad.SaveToFile(project, filePath); using (StreamReader file = File.OpenText(filePath)) { JsonSerializer serializer = new JsonSerializer(); return((DiaryTaskListContainer)serializer.Deserialize(file, typeof(DiaryTaskListContainer))); } } catch (ArgumentException) { var project = new DiaryTaskListContainer(); SaveLoad.SaveToFile(project, filePath); using (StreamReader file = File.OpenText(filePath)) { JsonSerializer serializer = new JsonSerializer(); return((DiaryTaskListContainer)serializer.Deserialize(file, typeof(DiaryTaskListContainer))); } } }