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) + "|Примечание");

//сохраняем изменения
Текст.Записать(ПутьКФайлу);
Ключи: | |