Лабораторная работа №6

This commit is contained in:
Anitonchik 2024-04-30 10:40:30 +04:00
parent fb8f19fa5a
commit c0136e0a63

View File

@ -156,30 +156,21 @@ public class StorageCollection<T>
{ {
return false; return false;
} }
string bufferTextFromFile = ""; using StreamReader rd = new StreamReader(filename);
using (FileStream fs = new(filename, FileMode.Open))
{
byte[] b = new byte[fs.Length];
UTF8Encoding temp = new(true); UTF8Encoding temp = new(true);
while (fs.Read(b, 0, b.Length) > 0) string str = rd.ReadLine();
{ if (str == null || !str.StartsWith(_collectionKey))
bufferTextFromFile += temp.GetString(b);
}
}
string[] strs = bufferTextFromFile.Split(new char[] { '\n', '\r' }, StringSplitOptions.RemoveEmptyEntries);
if (strs == null || strs.Length == 0)
{ {
return false; return false;
} }
if (!strs[0].Equals(_collectionKey))
{
//если нет такой записи, то это не те данные
return false;
}
_storages.Clear(); _storages.Clear();
foreach (string data in strs) string strs = "";
while ((strs = rd.ReadLine()) != null)
{ {
string[] record = data.Split(_separatorForKeyValue, StringSplitOptions.RemoveEmptyEntries); string[] record = strs.Split(_separatorForKeyValue, StringSplitOptions.RemoveEmptyEntries);
if (record.Length != 4) if (record.Length != 4)
{ {
continue; continue;