![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
DataSet & XML [D6, D7, MSSQL]
IronHawk © (2006-09-13 17:14:00)Модно ли читать (в,из) DataSet-а XML-данные?
sniknik (2006-09-14 11:56:00) [21]> Этот файл не создается средствами БДЕ.
т.е. это вообще просто какойто их внутренний файл просто (возможно случайно) имеющий расширение dbf? ....
ну допустим так, все одно непонятно какое отношение имеет используемый их программой формат и формат обменных файлов? внутренний это их внутреннее дело, а с обменными, это должно строго оговариваться. или бардак... и никакой разници с xml, те же самые проблемы, только помноженные на миф о том, что это универсальный формат обмена данными.
> А тот пример из википедии действительно решается обычным AddProcessingInstruction.
а зачем мне это решать если это якобы универсально?
> Недавно здесь кайф пытался побороть странный дбф в заголовке у которого одно, а в реале другое.
не совсем так, насколько понял у него там основная проблема в том, что пришли вперемешку файлы фокса(который как раз и пишет невзирая на байт в заголовке) и дбейса с кодировками и в дос и в "вин".
это не проблема формата, это организационная. если сказано четко, обмен ведется в dBase IV под дос, то проблем не будет. (а если еще и не пытаться использовать не приспособленную для этого вещь... ммм, вообще сказка будет.)
а вот тут к примеру
http://delphimaster.ru/cgi-bin/forum.pl?id=1158062383&n=0
решается проблема с xml. (или все таки нет? ;о)) что это доказывает? а поиспользуют пару ~ десятков лет как dbf, таких проблем накопится и поболее чем с ним.
Reindeer Moss Eater (2006-09-14 09:42:00) [22]Ну что такого страшного в строках длиной 256 символов?
В строках ничего страшного нет. И в полях тоже нет за исключением того, что их так просто не создашь.
Reindeer Moss Eater (2006-09-14 09:40:00) [23]Эт ты загнул. У клиппера длина символьных полей до 64К.
Но вообще то, если писать в DBF, как в файл и аккуратно работать со структурой, то проблем не возникнет.
Я и не утверждал, чт оэто именно клиппер. И у клиппера 64к - это мемо поля. А символьные - 256 символов.
И файл этот открывается и заполняется средствами БДЕ без проблем.
Этот файл не создаетсясредствами БДЕ.
Мне приходилось зашивать в ресурсы пустую болванку и выгружать её на диск.
И это только один пример как было уже сказано.
Недавно здесь кайф пытался побороть странный дбф в заголовке у которого одно, а в реале другое.
И примеров таких - множество.
А тот пример из википедии действительно решается обычным AddProcessingInstruction.
kaif (2006-09-14 00:15:00) [24]XML не зависит от платформы
О платформы не зависит только бумажный документ.
Положил его на платформу, а сверху - рыбу и пиво.
Другой (2006-09-13 21:20:00) [25]sniknik © (13.09.06 20:53) [21]
Аа, понял о чем Вы.
:)
Другой (2006-09-13 21:17:00) [26]sniknik © (13.09.06 20:53) [21]
1.
Вы либо попробуйте сохранить в UTF-8,
например редактором akelpad.
2.
Либо замените в "шапке" примера:
<?xml version="1.0" encoding="UTF-8"?>
на
<?xml version="1.0" encoding="windows-1251"?>
раз уж сохраняете в виндовой кодеровке.
оба варианта работают.
В данном случае "стандартные средства" не причем.
sniknik (2006-09-13 20:53:00) [27]Reindeer Moss Eater © (13.09.06 19:56) [18]
вот есть контора. и вы обязаны с ней работать в силу того, что она некий федеральный институт власти. и обязаны осуществлять обмен с ней.
а в конторе используется xml cо структурой строго по учебнику...
например отсюда (хотя понимаю это не учебник ;)
http://ru.wikipedia.org/wiki/XML#.D0.A1.D0.B8.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5_.D0.B8_.D1.81.D0.BB.D0.B0.D0.B1.D1.8B.D0.B5_.D1.81.D1.82.D0.BE.D1.80.D0.BE.D0.BD.D1.8B
и попробуй создай такой файл, и именно стандартными средствами... или хотябы прочитай. (скопируй пример в созданный текстовый файл, переименуй с расширением xml и открой IE... ты не открываеш их, они твой, как же так xml же средство обмена, его все понимают. или всетаки нет?)
это только один пример коих можно привести множенство (если иметь богатый опыт реальной работы)
p.s. не надо выдумывать "страшилок" жизнь и без них веселая.
p.p.s. ну работают они с такими таблицами, причем здесь обменные? принесеш в dBase, под dos естественно, "экзотический" клипер его сьест и не подавится.
а раз вы работаете не под ним, то данных размером больше 255 символов у вас нет... (ну или будеш подгонять. чего страшного?)
AlexWlad (2006-09-13 20:25:00) [28]Ну что такого страшного в строках длиной 256 символов? Про "короткие" строки давно пора забыть. Написать класс для работы с файлом напрямки - 1 час.
ANB (2006-09-13 20:24:00) [29]
> не средствами досовского клиппера
Эт ты загнул. У клиппера длина символьных полей до 64К.
Но вообще то, если писать в DBF, как в файл и аккуратно работать со структурой, то проблем не возникнет.
Reindeer Moss Eater (2006-09-13 19:56:00) [30]AlexWlad ©
Вот есть контора. И вы обязаны с ней работать в силу того, что она некий федеральный институт власти. И обязаны осуществлять обмен с ней.
А в конторе используется dbase c символьными полями длиной 256 букв.
Попробуй создай такой файл не средствами досовского клиппера или еще какой экзотики используемой в той конторе.
Это только один пример коих можно привести множенство (если иметь богатый опыт реальной работы)
Другой (2006-09-13 19:53:00) [31]Модноли читать (в,из) DataSet-а XML-данные?
Только заметил :)
AlexWlad (2006-09-13 19:51:00) [32]
> Reindeer Moss Eater © (13.09.06 19:44) [12]
Не так уж и много. Основная беда с индексами - там да, наизвращались... С другой стороны при экспорте/импорте индексы малополезны.
Reindeer Moss Eater (2006-09-13 19:50:00) [33]Есть вещи по настоящему вредные. И xml отнюдь не в их числе.
Юникод, например, точно изобрели пособники диавола.
Символ должен быть байтом!
Reindeer Moss Eater (2006-09-13 19:47:00) [34]И если в нашей табличке будет хотя бы миллиончика 2 записей, то на импорте серверу резко поплохеет
Это уже смахивает не на импорт/экспорт, а на миграцию данных схемы.
Другой (2006-09-13 19:45:00) [35]ANB © (13.09.06 19:39) [11]
А ты попробуй. И посмотри размер XML. Особливо, если полей в табличке много и все они не сильно длинные.
А зачем? Я выдрал кусок из работающего кода.
Хотя нет, щас попробую.
Особливо, если полей в табличке много и все они не сильно длинные.
Много эт сколько?
Reindeer Moss Eater (2006-09-13 19:44:00) [36]Проблемы начинаются, когда делаешь из дибейза - свой дибейз. Стандарты еще никому не вредили.
Ты вообще в курсе, сколько там стандартов?
ANB (2006-09-13 19:39:00) [37]
> Другой © (13.09.06 19:37) [9]
А ты попробуй. И посмотри размер XML. Особливо, если полей в табличке много и все они не сильно длинные.
AlexWlad (2006-09-13 19:37:00) [38]
> Reindeer Moss Eater © (13.09.06 19:33) [8]
Проблемы начинаются, когда делаешь из дибейза - свой дибейз. Стандарты еще никому не вредили.
Другой (2006-09-13 19:37:00) [39]ANB © (13.09.06 19:30) [7]
Столько записей не пробовал ;)
Reindeer Moss Eater (2006-09-13 19:33:00) [40]с dbase у меня лично проблем было намного меньше чем с xml, хотя использую его для обмена намного дольше.
У меня с моими дибейсами тоже проблем нет. Как и у любого другого с его дибейсами.
Проблемы начинаются когда люди начинают обмениваться своими дибейсами друг с другом. И вот тогда на ровном месте можно получить немало проблем.