наверх
Свободные IT публикации
быстро и доступно
логин:
пароль:

Работа с текстовыми файлами в 1С 8.x


Как выгрузить данные из справочника в текстовый файл?

Текст = Новый ТекстовыйДокумент; 
Выборка = Справочники.Номенклатура.Выбрать(); 

Пока Выборка.Следующий() Цикл 
	Стр = СтрЗаменить(Выборка.Наименование, Символ(34), "%квч%"); 
	Код = Строка(Выборка.Код) + Символ(34); 
	Текст.ДобавитьСтроку(Код + Стр); 
КонецЦикла; 

Текст.Записать("c:\temp\text.txt");

Как загрузить данные из текстового файла?

Текст = Новый ТекстовыйДокумент; 
Текст.Прочитать("c:\temp\text.txt"); 

Для НомерСтроки = 1 По Текст.КоличествоСтрок() Цикл 
	Стр = Текст.ПолучитьСтроку(НомерСтроки); 
	Позиция = Найти(Стр, Символ(34)); 
	Код = Сред(Стр, 1, Позиция-1); прНаименование = Сред(Стр, Позиция + 1); 
	Наименование = СтрЗаменить(прНаименование, "%квч%", Символ(34)); 
	Сообщить(Код + "-" + Наименование); 
КонецЦикла;

Как сохранить текст в формате UTF8 без маркера BOM


Для того, чтобы избавится от символов "п»ї" при записи в текстовый файл в формате UTF8, необходимо использовать формат "CESU-8".
ЗаписьPHP = Новый ЗаписьТекста(ФайлДляСохранения,"CESU-8");
ЗаписьPHP.Записать(ТекстUTF8);
ЗаписьPHP.Закрыть();

Работа с текстом. Модель последовательного доступа

Путь = "c:\temp\text.txt"; 
Текст = Новый ЗаписьТекста(Путь, КодировкаТекста.UTF8); 
Выборка = Справочники.Номенклатура.Выбрать(); 

Пока Выборка.Следующий() Цикл 
	Текст.ЗаписатьСтроку(Выборка.Наименование); 
КонецЦикла; 

Текст.Закрыть(); 

Путь = "c:\temp\text.txt"; 
Текст = Новый ЧтениеТекста(Путь, КодировкаТекста.UTF8); 
Стр = Текст.ПрочитатьСтроку(); 

Пока Стр <> Неопределено Цикл 
	Стр = Текст.ПрочитатьСтроку(); 
	Сообщить(Стр); 
КонецЦикла;