|
|
|
Двoйной юникoд
|
|||
|---|---|---|---|
|
#18+
Доброе утро. Может кто-то знает, как обойти такую ситуацию: я сохранил данные в 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да в строку в Акцессе? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2004, 07:06:33 |
|
||
|
Двoйной юникoд
|
|||
|---|---|---|---|
|
#18+
Дык может со вторым параметром функции поиграться? Мне кажется, что там надо указывать другую константу ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2004, 09:30:05 |
|
||
|
Двoйной юникoд
|
|||
|---|---|---|---|
|
#18+
Игрался я... При любых других значениях параметра StrConv() в строке получаются сплошные вопросики, изредка перемежаемые непонятными значками. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2004, 09:49:11 |
|
||
|
Двoйной юникoд
|
|||
|---|---|---|---|
|
#18+
А что происходит если вообще не применять StrConv? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2004, 09:52:47 |
|
||
|
Двoйной юникoд
|
|||
|---|---|---|---|
|
#18+
А как его не применишь? - В этом случае я его и обработать как строку не смогу, и передавать серверу тоже (хотя последнее можно попытаться сделать каким-либо другим способом, например передавать как BLOB). Но мне позарез нужна предварительная строковая обработка этих данных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2004, 10:07:40 |
|
||
|
Двoйной юникoд
|
|||
|---|---|---|---|
|
#18+
Коллеги! Неужели никому не нужно было прочитать юникодный файл в Акцесс? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2004, 15:03:21 |
|
||
|
Двoйной юникoд
|
|||
|---|---|---|---|
|
#18+
Была у меня похожая проблема. Надо было из таблицы А97 сбросить в текстовый файл таблицу с полем на иврите, а затем прочитать его в А2003. При том что оба Акса прекрасно работают с юникодом, записать в файл иврит и затем прочитать его, мне не удалось. Какие только комбинации StrConv не применял. Дело кончилось тем, что стал писать в файл Excel -я. Но тебе это скорее всего не подойдет! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2004, 15:26:18 |
|
||
|
Двoйной юникoд
|
|||
|---|---|---|---|
|
#18+
ЛунaтикКоллеги! Неужели никому не нужно было прочитать юникодный файл в Акцесс? дык файлы мы тащим по-байтно(Do While Not EOF(Canal) ' Цикл до конца файла MyChar = Input(1, #Canal)) и конвертим по-штучно - тебе это не подойдёт ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2004, 15:54:09 |
|
||
|
Двoйной юникoд
|
|||
|---|---|---|---|
|
#18+
Shuhard ЛунaтикКоллеги! Неужели никому не нужно было прочитать юникодный файл в Акцесс? дык файлы мы тащим по-байтно(Do While Not EOF(Canal) ' Цикл до конца файла MyChar = Input(1, #Canal)) и конвертим по-штучно - тебе это не подойдёт А может и подойдет? Покажите как, если не жалко ... Хотя как можно читать байты, а потом выделять из этого однобайтные и двухбайтные буквы - ума не приложу. Для справки: файл я получал, сохраняя рекордсет методом Save, файл при этом получается в юникоде. Причем notepad.exe его прекрасно отображает ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2004, 18:10:50 |
|
||
|
Двoйной юникoд
|
|||
|---|---|---|---|
|
#18+
автор однобайтные и двухбайтные буквы странно - я полагал ,что в Unicode ВСЁ 2 байта - стоит посмотреть файл любым HEX редактором,возможно дело всё-таки в кодировках ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2004, 18:16:45 |
|
||
|
Двoйной юникoд
|
|||
|---|---|---|---|
|
#18+
[quot Shuhardстранно - я полагал ,что в Unicode ВСЁ 2 байта - стоит посмотреть файл любым HEX редактором,возможно дело всё-таки в кодировках ?[/quot] Попробуйте: dim rs as adodb.recordset откройте его rs.save FileName, adPersistXML И посмотрите, что собой представляет кодировка. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2004, 19:29:26 |
|
||
|
|

start [/forum/topic.php?fid=45&gotonew=1&tid=1670153]: |
0ms |
get settings: |
7ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
60ms |
get topic data: |
11ms |
get first new msg: |
6ms |
get forum data: |
3ms |
get page messages: |
49ms |
get tp. blocked users: |
1ms |
| others: | 216ms |
| total: | 370ms |

| 0 / 0 |
