|   |   | 
| 
 | Кодировка для переноса текстового файла из 1С8.2 в 1С7.7 | ☑ | ||
|---|---|---|---|---|
| 0
    
        olmi 06.04.14✎ 18:53 | 
        Простите, уже писала об этом, какая-то ошибка в оформлении поста, не авторизуюсь, повторяю.
 Проблема: Создан текстовой документ в базе 8.2. ФайлВыгрузки=НашФайл; ТекДок=Новый ТекстовыйДокумент; Стр="Всякости"; ТекДок.ДобавитьСтроку(Стр); ТекДок.Записать(ФайлВыгрузки,"cp866"); Записывается, в TotalCommander читается как досовский файл, нормально. В 7.7 пытаюсь прочитать: ИмпортТекст=СоздатьОбъект("Текст"); ИмпортТекст.КодоваяСтраница(1); ИмпортТекст.Открыть(ФайлИмпорта); КолСтрок=ИмпортТекст.КоличествоСтрок();//КолСтрок>0 ИмпортСтрока=СокрЛП(ИмпортТекст.ПолучитьСтроку(1)); В ИмпортСтрока абракадабра. Пробовала другие кодировки, в том числе Windows1251, KOI8R, Записывала через ТекДок.Записать(ФайлВыгрузки,КодировкаТекста.OEM); и ТекДок.Записать(ФайлВыгрузки,КодировкаТекста.ANSI); меняла кодовую страницу на 0 для WINDOWS-кодировок - бесполезно. В Интернете пока ничего не нашла. Перебирать все кодировки, возможные в 8.2, очень долго. Буду благодарна за совет. | |||
| 1
    
        Wobland 06.04.14✎ 18:55 | 
        совет раз: без фото не взлетит;
 совет два: какую кодировку есть семёрочный Текст? | |||
| 2
    
        Wobland 06.04.14✎ 18:55 | 
        (1) *ест     | |||
| 3
    
        olmi 06.04.14✎ 18:57 | 
        +(0) Антифлуд: задача - не плод моего больного воображения. Есть торговая база в 8.2, а бухгалтерия, куда надо выгружать инфу, еще 7.7., переводим только в конце года.
 (1) Я написала про кодировку в 7.7 все, что знаю. В 7.7 надо ПРОЧИТАТЬ файл, созданный в 8.2. | |||
| 4
    
        Wobland 06.04.14✎ 18:58 | 
        возьми КД ваще     | |||
| 5
    
        olmi 06.04.14✎ 18:59 | 
        (4) Мимо. Надо сделать именно то, что я прошу.     | |||
| 6
    
        Wobland 06.04.14✎ 18:59 | 
        (4) или она в обратную сторону не работает?
 (3) придётся узнать больше | |||
| 7
    
        olmi 06.04.14✎ 19:01 | 
        Я просила обойтись без флуда. Задача срочная. Можешь-помоги, не можешь-отдохни в другом посте, пожалуйста!     | |||
| 8
    
        Wobland 06.04.14✎ 19:02 | 
        я бы попросил мне не указывать     | |||
| 9
    
        olmi 06.04.14✎ 19:02 | 
        (6)Попробую в обратную сторону, это совет толковый.     | |||
| 10
    
        olmi 06.04.14✎ 19:03 | 
        (8) Я не указываю, просто не могу решить задачу, очень нужна помощь. Прошу прощения, если задела.     | |||
| 11
    
        spectre1978 06.04.14✎ 19:06 | 
        (0) кодировка для текста у семерки по умолчанию - 1251. 866 не в кассу.     | |||
| 12
    
        olmi 06.04.14✎ 19:16 | 
        (11) Я писала в (0), что пробовала записывать через Windows1251 и читать через КодоваяСтраница(0). Не получилось, кажется. Еще раз попробую. Или речь о другом варианте?     | |||
| 13
    
        Wobland 06.04.14✎ 19:19 | 
        в (0) несколько по-другому читается. а правда, что СП есть во всех платформах?     | |||
| 14
    
        Torquader 06.04.14✎ 19:21 | 
        Начнём с того, что 1С 7.7 умеет читать только Windows-1251.
 Так что - читать что-то записанное не так не получится. P.S. у меня как-то проблем с текстовыми файлами никогда не возникало - поставьте что-ли Far - он позволяет кодировку на лету менять и писать один файл сразу в нескольких кодировках. | |||
| 15
    
        spectre1978 06.04.14✎ 19:22 | 
        ТекДок.Записать(ФайлВыгрузки, "windows-1251") - так делалось?
 Если все будет записано верно, то в семерочной части не нужно будет никаких телодвижений с кодировкой вообще | |||
| 16
    
        Torquader 06.04.14✎ 19:24 | 
        (15) А может быть вообще через Новый ЗаписьТекста делать ?     | |||
| 17
    
        spectre1978 06.04.14✎ 19:32 | 
        (16) кстати, да. Если нужно только писать то так проще     | |||
| 18
    
        Torquader 06.04.14✎ 19:33 | 
        (17) Да и память всю под файл не займёшь.     | |||
| 19
    
        olmi 06.04.14✎ 19:40 | 
        (14) - (18). Да, писала 
 ТекДок.Записать(ФайлВыгрузки, "windows-1251"); А при загрузке ИмпортТекст.КодоваяСтраница(0); Попробую ее вообще закомментить. А (16) я еще не умею, в 8-ке только начинаю, работала в 7.7 раньше. Посмотрю, как это делать, и что на выходе, спасибо!) | |||
| 20
    
        olmi 06.04.14✎ 19:46 | 
        (19) Не помогло. Посмотрю про Новый ЗаписьТекста.
 Главное дело, в Total Commander читает нормально как ANSI(локальная кодовая страница (0). А как поиграть с кодами в FAR Manager? Я с ним мало знакома, привыкла к Нортону. | |||
| 21
    
        Strogg 06.04.14✎ 19:54 | 
        я для такого переноса как-то нарочно ставил фар и отображал ннпечатаемые символы. У меня первым символом шла ерунда. Убирал первый символ через Симв() по-моему     | |||
| 22
    
        Torquader 06.04.14✎ 19:56 | 
        (20) Пробуй.
 И потом, не забывай, что и переводы строки должны быть правильными. | |||
| 23
    
        Torquader 06.04.14✎ 19:58 | 
        (19) Как говорят здесь люди - продам СП дорого:
 ЗаписьТекста (TextWriter) ЗаписьТекста (TextWriter) Методы: Закрыть (Close) Записать (Write) ЗаписатьСтроку (WriteLine) Открыть (Open) Конструкторы: По имени файла Формирование неинициализированного объекта Описание: Предназначен для последовательной записи в текстовые файлы. Доступность: Тонкий клиент, сервер, толстый клиент, внешнее соединение, мобильное приложение(клиент), мобильное приложение(сервер). Пример: Текст = Новый ЗаписьТекста("d:\win.txt", КодировкаТекста.ANSI); Текст.ЗаписатьСтроку("Добро пожаловать!"); Текст.ЗаписатьСтроку("Посторонним вход воспрещен."); Текст.Закрыть(); См. также: ЧтениеТекста ЗаписьТекста, конструктор По имени файла | |||
| 24
    
        Torquader 06.04.14✎ 19:59 | 
        А в 1С, когда читаем, наверное, кодировка текста должна устанавливаться до метода Открыть.     | |||
| 25
    
        _fvadim 06.04.14✎ 20:05 | 
        (21) такая борода бывает с utf (bom пишется)
 чтоб не разбираться так это или нет можно первую строку делать пустой и при загрузке пропускать. (0) что за абракадабра? этой штукой расшифровывается http://www.artlebedev.ru/tools/decoder/ ? | |||
| 26
    
        Torquader 06.04.14✎ 20:07 | 
        (25) Чтобы не наступать на грабли с UTF-ом, нужно создавать пустой файл, а потом его уже ДОПИСЫВАТЬ.     | |||
| 27
    
        olmi 06.04.14✎ 20:11 | 
        (21)-(26) Ребята, вы умницы!) Спасибо огромное!) Во-первых, перешла на ЗаписьТекста). Во-вторых, обнаружила еще и у себя ошибку попутно, так что по WINDOWS-1251, наверно, тоже прочлось бы). 
 Спасибо всем огромное!) Чтоб у вас все всегда получалось, дорогие!!!) | |||
| 28
    
        olmi 06.04.14✎ 20:12 | 
        И все, написанное позже, конечно, пригодится!) За все спасибо!!!)     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |