В программах 1С время от времени требуется работать с текстовыми файлами (файлами типа .txt), поскольку часть выгрузок из разных программ может быть представлена, к примеру, в виде текста с разделителями.
Если вы работаете на платформе 8.3, то создание, чтение и запись текстового файла в 1С производится только «на клиенте».
Для того чтобы создать текстовый файл в 1С, нам нужен объект вида Текстовый документ.
ФайлTXT= Новый ТекстовыйДокумент;
Затем нужно записать текстовый файл в 1С. В зависимости от платформы команда записи может отличаться. Для 8.2 это будет команда Записать():
ФайлTXT.Записать(Путь);
В 8.3 тоже возможно использовать эту команду, если включить режим модальности и режим использования синхронных вызовов. Но поскольку в 8.3 уходят от модальности, то правильно использовать команду НачатьЗапись()
ФайлTXT.НачатьЗапись(новый ОписаниеОповещения, Путь);
В каждой из этих команд также можно установить кодировку и разделители за именем файла. Например, для 8.3:
ФайлTXT.НачатьЗапись(новый ОписаниеОповещения, Путь, КодировкаТекста.UTF8, Символы.ПС);
Если речь о 8.2:
ФайлTXT.Записать(Путь,КодировкаТекста.UTF8,Символы.ПС);
Заполнять текстовый файл в 1С можно с помощью команды УстановитьТекст(«Текст»):
ФайлTXT.УстановитьТекст("Печеньки");
Или построчно, с помощью команды ДобавитьСтроку(«Текст»):
ФайлTXT.ДобавитьСтроку("Нужно больше печенек");
Строки в текстовый файл в 1С можно добавлять, удалять, вставлять, заменять, считать и получать. Пример всех команд:
ФайлTXT.ДобавитьСтроку("Нужно больше печенек");
ФайлTXT.ДобавитьСтроку("Печенек все еще недостаточно!");
ФайлTXT.ЗаменитьСтроку(3,"Ну ладно, печенек достаточно");
ФайлTXT.ВставитьСтроку(4,"И вообще, надоели мне печеньки!");
ФайлTXT.УдалитьСтроку(2);
ФайлTXT.КоличествоСтрок();
ФайлTXT.ПолучитьСтроку(3);
Сам файл можно очистить:
ФайлTXT.Очистить();
Теперь собственно чтение уже созданного файла. Его мы также осуществляем в двух вариантах. Для 8.2 и 8.3 с использованием режима модальности и режима использования синхронных вызовов это команда Прочитать():
ФайлTXT.Прочитать(Путь);
А для 8.3 без использования режима модальности это команда НачатьЧтение()
ФайлTXT.НачатьЧтение(новый ОписаниеОповещения,Путь);
Прочитать текстовый файл в 1С также можно с указанием кодировки и разделителей:
ФайлTXT.Прочитать(Путь,КодировкаТекста.UTF8, Символы.ПС);
ФайлTXT.НачатьЧтение(новый ОписаниеОповещения,Путь, КодировкаТекста.UTF8, Символы.ПС);
Из текстового файла в 1С 8 можно получить текст с помощью соответствующей команды:
ФайлTXT.ПолучитьТекст();
И содержимое текстового файла в 1С можно просто показать, как макет:
ФайлTXT.Показать("Наш файл",Путь);
Также можно отдельно запустить файл с помощью команды ЗапуститьПриложение (работает только в толстом клиенте или на 8.2):
ЗапуститьПриложение(Путь);
А вот скриншоты работающей программы с большей частью используемых команд
Специалист компании ООО «Кодерлайн»
Евгения Скунцева.