|
кодировка в xml файле
|
|||
---|---|---|---|
#18+
Есть такой код, который мне тут ранее подсказали. Этот код из xml позволяет получить курсор. Если в xml кодировка указана 1251 то все работает, а если 1252 то в курсор выводятся непонятные символы. Как исправить ситуацию, чтобы и при кодировке 1252 выводились нормальные данные? Код: sql 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.
... |
|||
:
Нравится:
Не нравится:
|
|||
21.11.2012, 09:40 |
|
кодировка в xml файле
|
|||
---|---|---|---|
#18+
Дима1991, А если потом курсор обработать (сам не пробовал :)) ): Расположенная в папке Visual FoxPro Tools\Cpzero, Cpzero.prg удаляет метку кодовой страницы из любого файла, который имеет табличную структуру файловая структура. После удаления метки Cpzero добавляет другую метку, которую вы определяете. Обычно вы используете Cpzero с файлами других платформ или более ранних версий FoxPro. Если эти файлы не имеют метки кодовой страницы, когда вы их открываете, Visual FoxPro подсказывает вам кодовую страницу. Если вы неверно определили кодовую страницу,и данные в файлах отображаются неправильно, скорректируйте кодовую страницу, используя Cpzero. DO Cpzero [WITH "filename"[, codepage_number]] Параметры filename Определяет имя файла и должно быть ограничено одинарными или двойными кавычками. Если filename не включено, отображается диалоговое окно определения местоположения файла. codepage_number Определяет желаемый номер кодовой страницы. Если параметр не включен, будет показано диалоговое окно выбора кодовой страницы. Примечание: Перед запуском Cpzero на таблице убедитесь, что она закрыта. Пример * Удалите кодовую страницу из MYFILE.DBF и установите новую кодовую страницу равной 437 * DO Cpzero WITH 'MYFILE.DBF',437 Смотри также CPCONVERT( ) Function CPCURRENT( ) Function CPDBF( ) Function GETCP( ) Function Utility Programs SET CPDIALOG Command SET NOCPTRANS Command ... |
|||
:
Нравится:
Не нравится:
|
|||
21.11.2012, 11:34 |
|
кодировка в xml файле
|
|||
---|---|---|---|
#18+
Jonny540, Код: sql 1.
это нужно писать после создания курсора? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.11.2012, 15:24 |
|
кодировка в xml файле
|
|||
---|---|---|---|
#18+
Вопрос в том, как FoxPro читает XML и что есть в XML. В самом XML есть какое-либо указание на то, в какой кодовой странице он сформирован? Может быть, проще будет сконвертировать содержимое XML. Как-то так Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
21.11.2012, 20:07 |
|
кодировка в xml файле
|
|||
---|---|---|---|
#18+
А в какой кодировке создается курсор tmp? Я бы попробовал CREATE CURSOR tmp CODEPAGE=1252 (.....). Вместо XMLTOCURSOR можно использовать объект XMLAdapter. Он имеет возможности управлять кодовыми страницами на лету при выгрузке XML-данных в курсор. Ну и STRCONV() не следует забывать. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.11.2012, 20:36 |
|
кодировка в xml файле
|
|||
---|---|---|---|
#18+
Дима1991Jonny540, Код: sql 1.
это нужно писать после создания курсора?Желательно после. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2012, 12:52 |
|
кодировка в xml файле
|
|||
---|---|---|---|
#18+
ВладимирМ, В XML содержится следующее, ну тегов конечно побольше для примера один взял: Если оставить такую кодировку, то при создании курсора или таблицы абракадабка получается, а если написать 1251 то нормально все Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24.
... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2012, 13:22 |
|
кодировка в xml файле
|
|||
---|---|---|---|
#18+
Beresnev, с курсор-адаптером не сталкивался никогда.. для текущего примера хотелось бы изменить этот момент, а то не хочется работающую программу исправлять заново. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2012, 14:48 |
|
кодировка в xml файле
|
|||
---|---|---|---|
#18+
Дима1991ВладимирМ, В XML содержится следующее, ну тегов конечно побольше для примера один взял: Если оставить такую кодировку, то при создании курсора или таблицы абракадабка получается, а если написать 1251 то нормально все Код: sql 1.
А собственно содержимое файла действительно в кодировке 1252? Или это просто "бантик", а содержимое в кодировке 1251? Для проверки, попробуйте открыть XML как текстовый файл, но меняя кодовую страницу. Как-то так Код: sql 1. 2.
И посмотрите, при какой кодировке содержимое будет "читабельное", а при какой - нет ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2012, 14:58 |
|
кодировка в xml файле
|
|||
---|---|---|---|
#18+
ВладимирМ, я ж вам говорю если писать 1251 то все нормально, просто нам этот файл передают из ФОМСа и изначально он в кодировке 1252. Сейчас проверил, если писать так: modify file MyFile.xml as 1251 то нормально все, а если так modify file MyFile.xml as 1251 modify file MyFile.xml as 1252 то символы непонятные.. Просто чтобы каждый раз вручную не менять кодировку хотелось бы программно заложить чтобы читало в 1252 правильно ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2012, 15:05 |
|
кодировка в xml файле
|
|||
---|---|---|---|
#18+
блин во втором случае так modify file MyFile.xml as 1252 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2012, 15:09 |
|
кодировка в xml файле
|
|||
---|---|---|---|
#18+
Ничего не понял. Файл реально сформирован в кодовой странице 1251 (win rus), но программа, его сгенерившая поставила не корректное значени 1252 (win eng)? Ну, по-простому, указанная кодировка в атрибуте encoding соответствует реальной кодировке содержимого? Безотносительно того, кто как читает. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2012, 15:35 |
|
кодировка в xml файле
|
|||
---|---|---|---|
#18+
ВладимирМ, Понимаете, я не знаю как формируется этот файл. Его в таком виде как я выложил образец дают нам из ФОМСа, а мы по нему потом отчеты получаем и сверяем ошибки, корректируем данные в базе. Когда мы получаем файл там указано бывает 1252, а при работе я меняю кодировку на 1251, чтобы так не менять хотел программно заложить механизм чтобы нормально работал, если в нем указана 1252 кодировка ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2012, 23:50 |
|
|
start [/forum/topic.php?fid=41&msg=38047683&tid=1583313]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
57ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
51ms |
get tp. blocked users: |
1ms |
others: | 17ms |
total: | 167ms |
0 / 0 |