Имя: Пароль:
1C
1С v8
Многострочные поля в текстовом документе
0 AlexYa
 
21.12.12
02:08
Есть файл CSV, в котором часть полей имеет мягкие переносы (код 0A = Символы.ПС). Записи разделяются 0D 0A = Символы.ВК + Символы.ПС

Excel и Open Calc читают и понимают это на ура.

В 1С пытаюсь загрузить как Текстовый документ:

ФайлTXT    = Новый ТекстовыйДокумент;
ФайлTXT.Прочитать(ИмяФайла, Кодировка, "");
ФайлTXT.РазделительСтрок = Символы.ВК+Символы.ПС;

Логика такая. Пустой разделитель в Прочитать запрещает конвертировать все переносы в ПС. Это работает, проверял.

Потом устанавливаю разделитель ВК + ПС.
И ожидаю, что по

   Стр = ФайлTXT.ПолучитьСтроку(НомСтроки);

у меня вытянет всё от ВК+ПС до ВК+ПС. И появятся поля с ПС внутри.
Но не тут то было. ПолучитьСтроку понимает конец строки всегда как ПС!

Может кому-то удавалось побороть? Чтобы по ПолучитьСтроку получать многострочные строки?
1 Armando
 
21.12.12
02:26
Если действительно так, то похоже на косяк платформы.

Покури FileSystemObject и объект TextStream. Может он умеет.
2 AlexYa
 
14.01.13
14:27
up
3 Armando
 
14.01.13
15:33
FSO не помог?
4 Torquader
 
15.01.13
00:55
FileSystemObject работает точно также - то есть завершением строки считается символ ПС, но, если перед ним нет ВК, то возвращается строка с ПС на конце - и можно понять, что за перенос был - подозреваю, что в вашем случае 1С ведёт себя точно также, так как использует похожий объект.