|
30.11.2011, 23:24 | #1 |
Участник
|
Привет всем.
Все было ОК, пока в документе не появился "не определяемый" символ из другого языка и проводник его сохранил как код #1А (SUB). Все бы хорошо, да Dataport воспринимает это символ как конец файла (почему-то преобразовывает код типа Ctrl-Z) и дальше не читает.. Может кто подскажет как прочитать текст с кодом 1А в dataport. Есть конечно идея с потоком и разборкой, но на проверку пока времени не было.. Что скажете? |
|
01.12.2011, 10:51 | #2 |
Участник
|
Цитата:
Сообщение от RedFox
Привет всем.
Все было ОК, пока в документе не появился "не определяемый" символ из другого языка и проводник его сохранил как код #1А (SUB). Все бы хорошо, да Dataport воспринимает это символ как конец файла (почему-то преобразовывает код типа Ctrl-Z) и дальше не читает.. Может кто подскажет как прочитать текст с кодом 1А в dataport. Есть конечно идея с потоком и разборкой, но на проверку пока времени не было.. Что скажете?
__________________
--------------------------------------------------------------------------------------------- "Собрать стадо из баранов легко, трудно собрать стадо из кошек" Профессор Сергей Капица |
|
01.12.2011, 15:50 | #3 |
Участник
|
Цитата:
Сообщение от jopagames3
Ваш "проводник", вероятно - Иван Сусанин.
Цитата:
Управляющие символы до 20h (до пробела) вообще ни к какому "языку" отношения иметь не должны - ОНИ НЕ МОГУТ ПОЯВЛЯТЬСЯ "КАК БУКВЫ" НИ В КАКОМ ТЕКСТЕ НИКАКОГО ЯЗЫКА.
Все коды видимых\читаемых\печатаемых "букавак" (в диапазоне 0..255) расположены много дальше пробела, или вообще по другому устроены (напр. unicode). Лично для Вас: Код: SUB, 1A — Substitute, подставить. Ставится на месте символа, значение которого было потеряно или испорчено при передаче. Сейчас Ctrl-Z используется как конец файла при вводе с клавиатуры в системах DOS и Windows. У этой функции нет никакой очевидной связи с символом SUB. Цитата:
Передаю отдельное спасибо всему Nav, за страницу 866, при том, что сама ОС любит исключительно 1251
Словом, используйте другую "ASCII-сохранялку" исходного файла вместо вашего "русского проводника". Цитата:
ЗЫ: Если я излагаю непонятно - не важно. У меня сегодня праздник!!! ж))) Излагаю как могу!
Вот именно вопрос в том, что нужно процессить то, что пришлос сайта.. Или Вы заменете До того, как начали читать датапортом? |
|
01.12.2011, 17:06 | #4 |
Участник
|
До того. А лучше на сайте прописать правила формирования тхт документа с разделителями, которые не допускают многозначность при обработки строки.
__________________
--------------------------------------------------------------------------------------------- "Собрать стадо из баранов легко, трудно собрать стадо из кошек" Профессор Сергей Капица |
|
01.12.2011, 21:24 | #5 |
Участник
|
|
|
02.12.2011, 10:42 | #6 |
Участник
|
RedFox, а как вы добились соответствия выверки таблицам из датапорта?
|
|
02.12.2011, 11:38 | #7 |
Участник
|
|
|
02.12.2011, 12:03 | #8 |
Участник
|
Нет, я про другое. Датапорты обычно используются для передачи между одинаковыми структурами данных. У вас есть табличка идентичная структуре банковской выписки? Если нет, то использование датапорта весьма сомнительно. Тем более его большая зависимость от структуры.
|
|
04.12.2011, 21:24 | #9 |
Участник
|
|
|
03.12.2011, 03:10 | #10 |
Участник
|
Redfox, правильно заданный вопрос - половина ответа
Jopagames+3 - спасибо, я этого не знал, буду иметь ввиду . |
|
06.12.2011, 11:24 | #11 |
Участник
|
проведите препроцессинг файла (через переменную File или средствами операционной системы, vbs скриптами и пр..) до запуска датапорта, который "заменит" вам во всем файле этот символ на что-то печатное.
|
|
13.12.2011, 13:30 | #12 |
Участник
|
Цитата:
Но не хочется посимвольно проходить по большому файлу и сравнивать по сигнатуре.. |
|