PDA

View Full Version : تولید فایل xml



captain_saed
شنبه 08 دی 1386, 09:15 صبح
salam
chetory mitavan file xml
ra dar delphi be envan
xoroji gereft

vcldeveloper
شنبه 08 دی 1386, 15:21 عصر
سلام،
فارسی تایپ کنید.

مشخص نکردید که خروجی چی رو می خواید بصورت XML داشته باشید. بطور کلی XmlDocument در دلفی برای کار کردن با فایل های XML ایجاد شده.
مشکلتون رو واضح تر مشخص کنید تا بشه جواب کاملتری داد.

captain_saed
جمعه 19 بهمن 1386, 13:57 عصر
سلام
منظور اینست که بتوان محتوای یک تیبل را روی بصورت فایل xml درآورد

vcldeveloper
شنبه 20 بهمن 1386, 02:24 صبح
Dataet های موجود در تب ADO و همچنین کامپوننت ClientDataset در تب Data Access متدی دارند به نام SaveToFile که محتوی جدول متصل به DataSet را در یک فایل ذخیره می کند. این متد پارامتری بنام Format دارد که نوع فایل ذخیره شده را مشخص می کند. یکی از انواع پشتیبانی شده نوع XML هست.
البته دقت کنید که فایل XML تولید شده توسط ADO با فایل XML تولید شده توسط ClientDataSet سازگار نیست.

اگر هم می خواید خودتون دستی این کار را انجام بدید، می تونید رکوردهای جدول را یکی یکی بخوانید و داده های هر رکورد را با XMLDocument در تب Internet به صورت XML ذخیره کنید.
را ه حل دیگه هم اینکه خودتون مستقیما تگ های XML را بنویسید، یعنی داده های هر رکورد را بصورت string بخوانید و به آنها تگ های XML مورد نظر خود را اضافه کنید و نتیجه را در یک فایل ذخیره کنید.

Valadi
شنبه 20 بهمن 1386, 08:05 صبح
با اجازه آقای کشاورز
این هم آموزش کامل

Export کردن یک Table به XML از طریق ADO

انجام دادن این کار از طریق ADO به راحتی استفاده از متد SaveToFile است.

به کد زیر نگاهی بیاندازید:

ADOTable1.SaveToFile('C:\test.xml', pfXML);

همچنین با استفاده از کد زیر می توانید فایل XML مربوطه را Load کنید:



ADOTable1.LoadFromFile('C:\test.xml');')

البته به جای pfXML می توانید از pfADTG می توانید استفاده کنید که در این صورت اطلاعات در یک فایل به صورت Binary نوشته می شود که به موضوع مبحث ما ربطی ندارد.

Export کردن یک Table به XML با استفاده از ClientDataSet

برای انجام این عمل با استفاده از ClientDataSet از مراحل زیر استفاده کنید:

1- یک کمپوننت TDataSetProvider (این کمپوننت در تب DataAccess قرار دارد) بر روی فرم خود بگذارید و با استفاده از پراپرتی DataSet آن را به Table یا Query و یا به طور کلی به Dataset مورد نیاز خود متصل کنید.

2- یک کمپوننت TClientDataSet (این کمپوننت هم در تب DataAccess قرار دارد) بر روی فرم خود بگذارید و مقدار ProviderName آن را برابر نام کمپوننت TDataSetProviderی قرار دهید که در مرحله 2 ساختید.

3- به سادگی از متد زیر استفاده کنید:



ClientDataSet1.Active := True;

;( ClientDataSet1.SaveToFile('C:\1.XML', dfXML)

پارامتر دوم متد SaveToFile می توانید شامل مقادیر زیر باشد: dfBinary, dfXML, dfXMLUTF8.

بررسی راجع به dfBinary به مبحث مقاله ما مربوط نمی شود.

حتما متوجه شده اید که تفاوت dfXML و dfXMLUTF8 چیست؟ dfXMLUTF8 برای Export اطلاعات به XML با فرمت Unicode استفاده می شود. البته راههای دیگری هم وجود دارد که در نسخه های قدیمی تر دلفی به کار می آیند.