Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Двoйной юникoд / 12 сообщений из 12, страница 1 из 1
24.11.2004, 07:06:33
    #32797114
Лунaтик
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Двoйной юникoд
Доброе утро. Может кто-то знает, как обойти такую ситуацию: я сохранил данные в XML формате и теперь пытаюсь в ADP-проекте закачать их обратно в базу MS SQL. Файл читается с помощью процедуры, опубликованной на сайте
http://am.rusimport.ru/MsAccess/topic.aspx?ID=274&find=%f4%e0%e9%eb
После чтения файла в массив байтов XML конвертируется в строку функцией
File2StrB = StrConv(TheBytes(), vbUnicode)
И вот тут наступает задница: файл уже был в юникoде, а после двойного преобразования там появляется такая каша с русским текстом!
Что делать то? Как преобразовать массив байтов юникoда в строку в Акцессе?
...
Рейтинг: 0 / 0
24.11.2004, 09:30:05
    #32797226
paparome
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Двoйной юникoд
Дык может со вторым параметром функции поиграться?

Мне кажется, что там надо указывать другую константу
...
Рейтинг: 0 / 0
24.11.2004, 09:49:11
    #32797269
Лунaтик
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Двoйной юникoд
Игрался я...
При любых других значениях параметра StrConv() в строке получаются сплошные вопросики, изредка перемежаемые непонятными значками.
...
Рейтинг: 0 / 0
24.11.2004, 09:52:47
    #32797277
Rivkin Dmitry
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Двoйной юникoд
А что происходит если вообще не применять StrConv?
...
Рейтинг: 0 / 0
24.11.2004, 10:07:40
    #32797303
Лунaтик
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Двoйной юникoд
А как его не применишь? - В этом случае я его и обработать как строку не смогу, и передавать серверу тоже (хотя последнее можно попытаться сделать каким-либо другим способом, например передавать как BLOB). Но мне позарез нужна предварительная строковая обработка этих данных.
...
Рейтинг: 0 / 0
24.11.2004, 15:03:21
    #32798159
Лунaтик
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Двoйной юникoд
Коллеги!
Неужели никому не нужно было прочитать юникодный файл в Акцесс?
...
Рейтинг: 0 / 0
24.11.2004, 15:26:18
    #32798245
Rivkin Dmitry
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Двoйной юникoд
Была у меня похожая проблема. Надо было из таблицы А97 сбросить в текстовый файл таблицу с полем на иврите, а затем прочитать его в А2003. При том что оба Акса прекрасно работают с юникодом, записать в файл иврит и затем прочитать его, мне не удалось. Какие только комбинации StrConv не применял. Дело кончилось тем, что стал писать в файл Excel -я. Но тебе это скорее всего не подойдет!
...
Рейтинг: 0 / 0
24.11.2004, 15:54:09
    #32798345
Shuhard
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Двoйной юникoд
ЛунaтикКоллеги!
Неужели никому не нужно было прочитать юникодный файл в Акцесс?
дык файлы мы тащим по-байтно(Do While Not EOF(Canal) ' Цикл до конца файла
MyChar = Input(1, #Canal)) и конвертим по-штучно - тебе это не подойдёт
...
Рейтинг: 0 / 0
24.11.2004, 18:10:50
    #32798635
Лунaтик
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Двoйной юникoд
Shuhard ЛунaтикКоллеги!
Неужели никому не нужно было прочитать юникодный файл в Акцесс?
дык файлы мы тащим по-байтно(Do While Not EOF(Canal) ' Цикл до конца файла
MyChar = Input(1, #Canal)) и конвертим по-штучно - тебе это не подойдёт

А может и подойдет? Покажите как, если не жалко ...
Хотя как можно читать байты, а потом выделять из этого однобайтные и двухбайтные буквы - ума не приложу.
Для справки: файл я получал, сохраняя рекордсет методом Save, файл при этом получается в юникоде. Причем notepad.exe его прекрасно отображает ...
...
Рейтинг: 0 / 0
24.11.2004, 18:16:45
    #32798649
Shuhard
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Двoйной юникoд
автор
однобайтные и двухбайтные буквы

странно - я полагал ,что в Unicode ВСЁ 2 байта - стоит посмотреть файл любым HEX редактором,возможно дело всё-таки в кодировках ?
...
Рейтинг: 0 / 0
24.11.2004, 19:29:26
    #32798728
Лунaтик
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Двoйной юникoд
[quot Shuhardстранно - я полагал ,что в Unicode ВСЁ 2 байта - стоит посмотреть файл любым HEX редактором,возможно дело всё-таки в кодировках ?[/quot]

Попробуйте:

dim rs as adodb.recordset
откройте его
rs.save FileName, adPersistXML

И посмотрите, что собой представляет кодировка.
...
Рейтинг: 0 / 0
24.11.2004, 20:29:22
    #32798763
Shuhard
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Двoйной юникoд
и что она представляет ?
сам я пробовать понятное дело не буду
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Двoйной юникoд / 12 сообщений из 12, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]