|
манипуляции с ХМЛ
|
|||
---|---|---|---|
#18+
есть ПБ105+Win7 1.что хотел-есть хмл файл из головной организации, нужно в опр место вставить спецификацию техн оборудования и сохранить файл. Я в ПБ читаю файл заголовка, из ДВ получаю файл спецификации и сливаю их. Кодировка UTF-8 обоих файлов. Все получается как я и задумал-но после слияния ХМЛ файл перестает читаться ХМЛ инструментами-MS WORD, XML editor. Проверил все до символа-предыдущие строки с моей единственной добавленной строкой. ВСЕ ОК! 2.тогда я проделал это вручную-благо все таки файл текстовый. И получаю тот же результат - файл не читается ХМЛ инструментом. вопрос-где засада? в ХМЛ я совсем не разбираюсь, но уж очень загадочно.... :-( ... |
|||
:
Нравится:
Не нравится:
|
|||
13.09.2012, 15:01 |
|
манипуляции с ХМЛ
|
|||
---|---|---|---|
#18+
sboyko, Так примеры читаемого нечитаемого XML давайте. Мы ж не телепаты :) ... |
|||
:
Нравится:
Не нравится:
|
|||
13.09.2012, 16:09 |
|
манипуляции с ХМЛ
|
|||
---|---|---|---|
#18+
Переводы строк скорее всего добавляются. Проверьте в редакторе на нечитаемые символы (только через hex-коды просматривайте). Еще, при простом слиянии может оставаться EOF. Ну и неплохо бы все-таки начальный и конечный файл просмотреть, миелафон пока ведь еще не изобрели:) ... |
|||
:
Нравится:
Не нравится:
|
|||
13.09.2012, 16:42 |
|
манипуляции с ХМЛ
|
|||
---|---|---|---|
#18+
spas2001, =========правильное <oos:product> <oos:OKDP> <oos:code> 3010500</oos:code> <oos:name>ЭЛЕКТРОННО - ВЫЧИСЛИТЕЛЬНАЯ ТЕХНИКА, ЕЕ ДЕТАЛИ И ПРИНАДЛЕЖНОСТИ</oos:name> </oos:OKDP> <oos:name>компакт диск в индивидуальной упаковке «SlimBox», DVD+RW, Объем 4.7Gb, скорость записи 4х</oos:name> <oos:OKEI> <oos:code>796</oos:code> <oos:name>Штука</oos:name> </oos:OKEI> <oos:price>40.61</oos:price> <oos:quantity>5220</oos:quantity> <oos:sum>211984.2</oos:sum> </oos:product> =========мое, неправильное <oos:product> <oos:name>«SlimBox» 2010</oos:name> <oos:OKDP> <oos:code>3020102</oos:code> <oos:name>Комплексы и машины вычислительные аналого - цифровые</oos:name> </oos:OKDP> <oos:price>110450.00</oos:price> <oos:sum>358962500.00</oos:sum> <oos:quantity>3250</oos:quantity> <oos:OKEI> <oos:code>796</oos:code> <oos:name>шт </oos:name> </oos:OKEI> </oos:product> ========= 1.про миелофон согласен, но здесь нужен мозговой штурм или просто знание вопроса 2.раньше были viewer в 16 ричном виде- кто подскажет где это сейчас 3юможет ли это быть что нибудь с кодировкой? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.09.2012, 21:47 |
|
манипуляции с ХМЛ
|
|||
---|---|---|---|
#18+
[quot sboyko]spas2001, <oos:name>шт </oos:name> ========= этот момент раньше был таким <oos:name>шт</oos:name> =============== ничего не изменилось! а может ли быть так что из за кодировки символы выглядят одинаково а в их основе что разное-то есть unicode или однобайтный код? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.09.2012, 21:56 |
|
манипуляции с ХМЛ
|
|||
---|---|---|---|
#18+
sboyko, Если текст не отличается значит дело в каких то нетекстовых (невидимых) данных. Поэтому давайте сюда сами файлы (запакованные и приложенные), а не отрывки из них. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.09.2012, 22:14 |
|
манипуляции с ХМЛ
|
|||
---|---|---|---|
#18+
Внутри тега можете писать что угодно, ну почти, имеется ввиду за пределами кодировки Анатолий прав, нужно смотреть сами файлы, иначе бесполезно ... |
|||
:
Нравится:
Не нравится:
|
|||
13.09.2012, 22:42 |
|
манипуляции с ХМЛ
|
|||
---|---|---|---|
#18+
Вместо viewer-а возьмите far, там есть такая возможность Или сами установите XMLSpy и будет вам счастье:) ... |
|||
:
Нравится:
Не нравится:
|
|||
13.09.2012, 22:43 |
|
манипуляции с ХМЛ
|
|||
---|---|---|---|
#18+
Надо описать пространство имен "oos" и сохранить все в кодировке, указанной в пар-ре "encoding=...". Все работает. <?xml version="1.0" encoding="utf-8"?> <oos:product xmlns:oos=" http://www.w3.org"> <oos:name>"SlimBox" 2010</oos:name> <oos:OKDP> <oos:code>3020102</oos:code> <oos:name>Комплексы и машины вычислительные аналого - цифровые</oos:name> </oos:OKDP> <oos:price>110450.00</oos:price> <oos:sum>358962500.00</oos:sum> <oos:quantity>3250</oos:quantity> <oos:OKEI> <oos:name>шт </oos:name> <oos:code>796</oos:code> </oos:OKEI> </oos:product> Good Luck ! ... |
|||
:
Нравится:
Не нравится:
|
|||
14.09.2012, 09:46 |
|
манипуляции с ХМЛ
|
|||
---|---|---|---|
#18+
Да, забыл добавить - кавычки я тоже заменил ... |
|||
:
Нравится:
Не нравится:
|
|||
14.09.2012, 09:52 |
|
манипуляции с ХМЛ
|
|||
---|---|---|---|
#18+
Anatoly Moskovskysboyko, Если текст не отличается значит дело в каких то нетекстовых (невидимых) данных. Поэтому давайте сюда сами файлы (запакованные и приложенные), а не отрывки из них. прикладываю RAR папку в которой файлы 1.заголовок 2.спец из ПБ105 3.результирующий файл из файла 2(спец) выдернута строка от <product>...</product> и вставлена в файл заголовка с получением результирующего файла. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.09.2012, 11:14 |
|
манипуляции с ХМЛ
|
|||
---|---|---|---|
#18+
вроде получилось! писал файл с результатом в кодировке utf16le. поменял на utf8 и все пошло, правда самому не понятно что меняет эта кодировка. в продолжение вопрос-как прочитать ХМЛ файл, полученный не из моей программы, в мою программу в DW? что нужно сделать? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.09.2012, 14:03 |
|
манипуляции с ХМЛ
|
|||
---|---|---|---|
#18+
sboykoвроде получилось! писал файл с результатом в кодировке utf16le. поменял на utf8 и все пошло, правда самому не понятно что меняет эта кодировка. Тут как раз все понятно - вы в файле указывали что он encoding="utf-8", а сами создавали его в другой кодировке. sboykoв продолжение вопрос-как прочитать ХМЛ файл, полученный не из моей программы, в мою программу в DW? что нужно сделать? В общем случае надо ручками парсить загружаемый XML например используя класс PBDOM. Напрямую в DW - врядли. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.09.2012, 15:18 |
|
манипуляции с ХМЛ
|
|||
---|---|---|---|
#18+
Anatoly MoskovskyТут как раз все понятно - вы в файле указывали что он encoding="utf-8", а сами создавали его в другой кодировке. Можно создавать и в UTF-16LE, но при этом надо указать правильную кодировку в атрибуте encoding, а также насколько помню так как UTF-16 несовместима с ASCII то нужно в начале файла указать BOM (byte order mark) кодировки UTF-16LE (их несколько для разных вариаций utf ) ... |
|||
:
Нравится:
Не нравится:
|
|||
14.09.2012, 15:24 |
|
манипуляции с ХМЛ
|
|||
---|---|---|---|
#18+
Anatoly MoskovskyAnatoly MoskovskyТут как раз все понятно - вы в файле указывали что он encoding="utf-8", а сами создавали его в другой кодировке. Можно создавать и в UTF-16LE, но при этом надо указать правильную кодировку в атрибуте encoding, а также насколько помню так как UTF-16 несовместима с ASCII то нужно в начале файла указать BOM (byte order mark) кодировки UTF-16LE (их несколько для разных вариаций utf ) Большой спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
16.09.2012, 23:14 |
|
|
start [/forum/topic.php?fid=15&msg=37957783&tid=1335501]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
136ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
others: | 13ms |
total: | 241ms |
0 / 0 |