Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

Убрать некорректный символ из файла

Убрать некорректный символ из файла
Я
   Мелифаро
 
29.11.17 - 13:42
Есть ситуация - из интернет-банкинга выгружаются платежки в формате 1С. Вроде бы все замечательно, однако они не загружаются. Выяснил, почему - в назначении платежа в случайных местах строки ставится символ LF (без CR). Блокнот, что характерно, этого перевода строки не видит и визуально все замечательно, выявил косяк через Notepad++.
При прочтении файла через ТекстовыйДокумент() 1С по какой-то причине заменяет эти одиночные LF на CR LF, в результате чего в тексте появляются ненужные переносы строк, ломающие структуру формата файла.

Вопрос - есть ли какой-то иной способ чтения файла (ИзвлечениеТекста не предлагать, там UTF-8 не поддерживается), не искажающий изначальный набор байт вместе со спецсимволами? Ну, чтобы эти одиночные LF убрать, а потом уже с текстом работать...
 
 
   Fragster
 
1 - 29.11.17 - 13:49
(0) не заменяет, а интерпретирует как новую строку. сделай СтрЗаменить(Текст, Символ(10), "")// ну, или 13 :)

и будь счастлив
   SSSSS_AAAAA
 
2 - 29.11.17 - 13:54
(0) Сначала замени все LF на какой-нить спецсимвол, который в тексте точно не встречается, а потом сочетание этого символа с CR замени на CRLF. Той же СтрЗаменить().
   SSSSS_AAAAA
 
3 - 29.11.17 - 13:55
(2) А потом спецсимвол на пустую строку.
   Fragster
 
4 - 29.11.17 - 14:27
(2) да пофиг, текстовыйдокумент что #10#13, что #13, что #10 будет воспринимать как перевод строки
   Мелифаро
 
5 - 30.11.17 - 05:07
(1)(2) Проблема в том, что 1С при чтении через ТекстовыйДокумент() сама вместо одиночного LF подставляет CR LF. То есть в прочитанном файле уже этих "одиночных" LF нет. А в исходном - есть. Такая вот ерунда.
   Мелифаро
 
6 - 30.11.17 - 05:34
+(5) То бишь да, в (1) верно, она интерпретирует LF как CR LF безусловно. Вопрос в том, есть ли способ извернуться и прочитать файл побайтно как он есть без лишних интерпретаций?

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует