1С: Работа с внешними файлами. Работа с текстовыми файлами
Описание
Примеры работы с текстовыми файлами. Запись в файл, последовательное чтение, последовательная запись, редактирование файла и др.
Оглавление (нажмите, чтобы раскрыть)
Добавление текста в файл
Пример добавления текста в файл из 1СПутьКФайлу = "C:\tmp\2.txt"; //открываем файл Текст = Новый ЗаписьТекста(); Текст.Открыть( ПутьКФайлу, КодировкаТекста.UTF8, Символы.ПС, Истина,); //добавляем новую строчку Текст.ЗаписатьСтроку( "НоваяСтрока", Символы.ПС); Текст.Закрыть();
Запись в файл
Пример записи текста в файл из 1СПутьКФайлу = "C:\tmp\2.txt"; //создаем файл НашФайл = Новый ТекстовыйДокумент; Выборка = Справочники.Номенклатура.Выбрать(); //записываем построчно справочник Пока Выборка.Следующий() Цикл Строка = Выборка.Код + "|" + Выборка.Наименование; НашФайл.ДобавитьСтроку(Строка); КонецЦикла; //сохраняем данные НашФайл.Записать(ПутьКФайлу);
Последовательная запись
Пример последовательной записи в файл из 1СПутьКФайлу = "C:\tmp\2.txt"; //создаем файл Текст = Новый ЗаписьТекста( ПутьКФайлу, КодировкаТекста.UTF8); Выборка = Справочники.Номенклатура.Выбрать(); //записываем построчно справочник Пока Выборка.Следующий() Цикл Строка = Выборка.Код + "|" + Выборка.Наименование; Текст.ЗаписатьСтроку(Строка); КонецЦикла; Текст.Закрыть();
Последовательное чтение
Пример последовательного чтения текстового файла из 1СПутьКФайлу = "C:\tmp\1.txt"; //создаем объект для чтения Текст = Новый ЧтениеТекста( ПутьКФайлу, КодировкаТекста.ANSI); //читаем файл построчно Пока Истина Цикл Строка = Текст.ПрочитатьСтроку(); Если Строка = Неопределено Тогда Прервать; КонецЕсли; Сообщить(Строка); КонецЦикла; Текст.Закрыть();
Прочитать весь текст
Пример чтения всего текста файла из 1СПутьКФайлу = "C:\tmp\1.txt"; //проверяем наличие файла НашФайл = Новый Файл(ПутьКФайлу); Если Не НашФайл.Существует() Тогда Сообщить("Файл не существует"); Возврат; КонецЕсли; //читаем текст из файла ТекстовыйФайл = Новый ТекстовыйДокумент; ТекстовыйФайл.Прочитать(ПутьКФайлу); ВесьТекст = ТекстовыйФайл.ПолучитьТекст(); Сообщить(ВесьТекст);
Прочитать текст построчно
Пример построчного чтения файла из 1СПутьКФайлу = "C:\tmp\1.txt"; //читаем файла НашФайл = Новый ТекстовыйДокумент; НашФайл.Прочитать(ПутьКФайлу); //построчно заносим текст в массив Строки = Новый Массив; Для Н = 1 По НашФайл.КоличествоСтрок() Цикл //читаем текущую строку Строка = НашФайл.ПолучитьСтроку(Н); Строки.Добавить(Строка); КонецЦикла;
Редактирование файла
Пример редактирования текстового файла из 1СПутьКФайлу = "C:\tmp\2.txt"; //читаем файл Текст = Новый ТекстовыйДокумент; Текст.Прочитать(ПутьКФайлу,); //удаляем последние две строки КолСтрок = Текст.КоличествоСтрок(); Если КолСтрок >= 2 Тогда Текст.УдалитьСтроку(КолСтрок); Текст.УдалитьСтроку(КолСтрок - 1); КонецЕсли; //Добавляем две строки Текст.ДобавитьСтроку("Новая строка l"); Текст.ДобавитьСтроку("Новая строка 2"); //заменяем 1-ю строку Текст.ЗаменитьСтроку(1, "Новый заголовок"); //дописывает текст ко 2-й строке Текст.ЗаменитьСтроку(2, Текст.ПолучитьСтроку(2) + "|Примечание"); //сохраняем изменения Текст.Записать(ПутьКФайлу);