diff --git a/ArmoredCar/ArmoredCar/MapsCollection.cs b/ArmoredCar/ArmoredCar/MapsCollection.cs index 32ab235..70f5d27 100644 --- a/ArmoredCar/ArmoredCar/MapsCollection.cs +++ b/ArmoredCar/ArmoredCar/MapsCollection.cs @@ -83,10 +83,9 @@ namespace ArmoredCar /// /// Строка, которую следует записать /// Поток для записи - private static void WriteToFile(string text, FileStream stream) + private static void WriteToFile(string text, StreamWriter stream) { - byte[] info = new UTF8Encoding(true).GetBytes(text); - stream.Write(info, 0, info.Length); + stream.Write(text, 0, text.Length); } /// /// Сохранение информации по автомобилям в хранилище в файл @@ -99,7 +98,7 @@ namespace ArmoredCar { File.Delete(filename); } - using (FileStream fs = new(filename, FileMode.Create)) + using (StreamWriter fs = new(filename)) { WriteToFile($"MapsCollection{Environment.NewLine}", fs); foreach (var storage in _mapStorages) @@ -122,13 +121,12 @@ namespace ArmoredCar return false; } string bufferTextFromFile = ""; - using (FileStream fs = new(filename, FileMode.Open)) + using (StreamReader fs = new(filename)) { - byte[] b = new byte[fs.Length]; - UTF8Encoding temp = new(true); - while (fs.Read(b, 0, b.Length) > 0) + string? line; + while ((line = fs.ReadLine()) != null) { - bufferTextFromFile += temp.GetString(b); + bufferTextFromFile += line + "\r\n"; } } var strs = bufferTextFromFile.Split(new char[] { '\n', '\r' }, @@ -149,6 +147,12 @@ namespace ArmoredCar case "SimpleMap": map = new SimpleMap(); break; + case "MyMapLabirinth": + map = new MyMapLabirinth(); + break; + case "MyMapWooden": + map = new MyMapWooden(); + break; } _mapStorages.Add(elem[0], new MapWithSetArmoredCarsGeneric(_pictureWidth, _pictureHeight, map)); _mapStorages[elem[0]].LoadData(elem[2].Split(separatorData, StringSplitOptions.RemoveEmptyEntries));