запись через StreamWriter

This commit is contained in:
Nikita Potapov 2022-11-26 15:17:00 +04:00
parent db90912206
commit f478227337

View File

@ -3,6 +3,7 @@ using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Text; using System.Text;
using System.Threading.Tasks; using System.Threading.Tasks;
using static System.Net.Mime.MediaTypeNames;
namespace Boats namespace Boats
{ {
@ -88,16 +89,6 @@ namespace Boats
} }
} }
/// <summary> /// <summary>
/// Метод записи информации в файл
/// </summary>
/// <param name="text">Строка, которую следует записать</param>
/// <param name="stream">Поток для записи</param>
private static void WriteToFile(string text, FileStream stream)
{
byte[] info = new UTF8Encoding(true).GetBytes(text);
stream.Write(info, 0, info.Length);
}
/// <summary>
/// Сохранение информации по лодкам в хранилище в файл /// Сохранение информации по лодкам в хранилище в файл
/// </summary> /// </summary>
/// <param name="filename">Путь и имя файла</param> /// <param name="filename">Путь и имя файла</param>
@ -108,12 +99,12 @@ namespace Boats
{ {
File.Delete(filename); File.Delete(filename);
} }
using (FileStream fs = new(filename, FileMode.Create)) using (StreamWriter sw = File.CreateText(filename))
{ {
WriteToFile($"MapsCollection{Environment.NewLine}", fs); sw.WriteLine($"MapsCollection");
foreach (var storage in _mapStorages) foreach (var storage in _mapStorages)
{ {
WriteToFile($"{storage.Key}{separatorDict}{storage.Value.GetData(separatorDict, separatorData)}{Environment.NewLine}", fs); sw.WriteLine($"{storage.Key}{separatorDict}{storage.Value.GetData(separatorDict, separatorData)}");
} }
} }
return true; return true;
@ -139,7 +130,8 @@ namespace Boats
bufferTextFromFile += temp.GetString(b); bufferTextFromFile += temp.GetString(b);
} }
} }
var strs = bufferTextFromFile.Split(new char[] { '\n', '\r' }, StringSplitOptions.RemoveEmptyEntries); var strs = bufferTextFromFile.Split(new char[] { '\n', '\r' },
StringSplitOptions.RemoveEmptyEntries);
if (!strs[0].Contains("MapsCollection")) if (!strs[0].Contains("MapsCollection"))
{ {
//если нет такой записи, то это не те данные //если нет такой записи, то это не те данные