FileService.cs 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. using Newtonsoft.Json;
  2. using OUP.ForOUP;
  3. using System;
  4. using System.Collections.Generic;
  5. using System.ComponentModel;
  6. using System.IO;
  7. using System.Linq;
  8. using System.Text;
  9. using System.Threading.Tasks;
  10. namespace OUP.Services
  11. {
  12. class FileService
  13. {
  14. private readonly string PATH;
  15. public FileService(string path)
  16. {
  17. PATH = path;
  18. }
  19. public BindingList<Descriptions> LoadData()
  20. {
  21. var fileExists = File.Exists(PATH);
  22. if (!fileExists)
  23. {
  24. File.CreateText(PATH).Dispose();
  25. return new BindingList<Descriptions>();
  26. }
  27. using (var reader = File.OpenText(PATH))
  28. {
  29. var fileText = reader.ReadToEnd();
  30. return JsonConvert.DeserializeObject<BindingList<Descriptions>>(fileText);
  31. }
  32. }
  33. public void SaveData(object todoDataList)
  34. {
  35. using (StreamWriter writer = File.CreateText(PATH))
  36. {
  37. string output = JsonConvert.SerializeObject(todoDataList);
  38. writer.Write(output);
  39. }
  40. }
  41. }
  42. }