public object ПрочитатьНаборЗаписейИзФайла(/*НаборЗаписей, Файл, ТекущаяСтрокаФайла*/)
{
/*// Каждая запись может быть записана в файле сведений максимум 1 раз, но может быть и не записана.
*/
/*// В любом случае записи в файле должны быть записаны последовательно.
*/
/*// Построим из структуры-набора массив имен записей для индексного обращения
*/
//МассивИменЗаписейНабора = Новый Массив;
//ПоследнийИндексЗаписиНабора = НаборЗаписей.Количество()-1;
//ИндексТекущейЗаписиНабора = 0;
while(true/*Истина*/)
{
/*// Прочитаем очередную запись файла
*/
//ТекущаяСтрокаФайла = ТекущаяСтрокаФайла + 1;
//СтрокаФайла = Файл.ПолучитьСтроку(ТекущаяСтрокаФайла);
if(true/*СтрокаФайла = "@@@"*/)
{
/*// разделитель - признак окончания набора записей
*/
}
/*// Выделим из строки файла имя записи и сами данные
*/
//ПозицияРазделителя = Найти(СтрокаФайла,":");
//ИмяЗаписиФайла = Лев(СтрокаФайла, ПозицияРазделителя - 1);
//СтрДанные = Сред(СтрокаФайла, ПозицияРазделителя + 1);
/*// Попытаемся найти для имени записи файла соответствие в наборе записей
*/
//Нашли = Ложь;
while(true/*Не Нашли*/)
{
if(true/*(ИмяЗаписиФайла = МассивИменЗаписейНабора[ИндексТекущейЗаписиНабора])*/)
{
//Нашли = Истина;
}
if(true/*ИндексТекущейЗаписиНабора = ПоследнийИндексЗаписиНабора*/)
{
}
}
if(true/*(НЕ Нашли)*/)
{
//Сообщить("Неверный формат файла. В строке № " + ТекущаяСтрокаФайла +" указано неверное имя записи """ + ИмяЗаписиФайла + """!");
}
//ДанныеЗаписи = НаборЗаписей[ИмяЗаписиФайла];
if(true/*ДанныеЗаписи.ТипДанных = "СТРУКТУРА"*/)
{
/*// В файле значения структуры перечисляются через запятую
*/
//ВсегоПолей = ДанныеЗаписи.Поля.Количество();
//НомерПоля = 0;
}
}
return null;
}