|
|
|
Проблема с UCS-2
|
|||
|---|---|---|---|
|
#18+
Здравствуйте! Заранее извиняюсь, что вопрос связан с ASP, а не ASP.NET. Но здесь соответствующей ветки не нашёл... Есть проблема c кодировкой. Windows Server 2003, MS SQL Server 2000. Пытаюсь на ASP в PerlScript средствами ADO вытащить строку из базы. Строка в базе лежит в UCS-2. Как ни бился — кракозябры. Пробовал и codepage=65001 ставить, и использовать DBI вместо ADO, и пытаться конвертировать по-разному. Двухдневное гугление ничего не прояснило. Что характерно, на JavaScript вместо PerlScript таких проблем не возникает. Но необходимо прикрутить к CMS довольно объёмный перловый скрипт для обработки текста. Ниже простейший пример: попытка получить строку и записать её в utf8-файл. Кракозябры... Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.11.2011, 03:50:16 |
|
||
|
Проблема с UCS-2
|
|||
|---|---|---|---|
|
#18+
Всё, решил сам, хотя и пришлось через известное место. Приведённый выше, но рабочий код: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. То есть, получаем из БД hex юникодной строки (она изначально была типа ntext, так что пришлось промежуточно перевести в nvarchar), распаковываем в символьную строку hex, запаковываем обратно и уже потом нормально декодируем. Знаю, что извращение, но по крайней мере работает :) Позже попробую решить проблему более адекватно. А, ну и в первом примере ошибся. Кодировка UCS-2LE была, а не UCS-2BE. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.11.2011, 08:58:40 |
|
||
|
Проблема с UCS-2
|
|||
|---|---|---|---|
|
#18+
Assador, Модератор: Могу в перловый форум перенести, если хотите. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.11.2011, 10:09:27 |
|
||
|
Проблема с UCS-2
|
|||
|---|---|---|---|
|
#18+
ShSerge, может, и стоит. Не один я с такой штукой сталкивался. Подобных вопросов нагуглил много, а вот ответов не нашёл. А с другой стороны, это к перлу отношения имеет мало. Скорее к PerlScript. Но как вам кажется логичнее, так и поступайте. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.11.2011, 11:10:21 |
|
||
|
|

start [/forum/topic.php?fid=18&msg=37521521&tid=1360350]: |
0ms |
get settings: |
9ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
214ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
55ms |
get tp. blocked users: |
1ms |
| others: | 235ms |
| total: | 557ms |

| 0 / 0 |
