در این جلسه، تیم کدگیت را با آموزش خواندن فایل xml با Jdom در جاوا همراهی کنید. پیش نیاز این آموزش شامل موارد زیر است:

  1. آشنایی با فایل در جاوا
  2. آشنایی با for در جاوا
  3. مدیریت استثناها در جاوا
  4. آشنایی با متد
  5. اضافه کردن کتابخانه در جاوا

Xml

ایجاد فناوری اکس‌ام‌ال یا زبان نشانه‌گذاری گسترش‌پذیر (eXtensible Markup Language) را باید بدون تردید یکی از بزرگ‌ترین و اساسی‌ترین گامهایی به حساب آورد که در مسیر حلّ مشکل اندازه پذیری در اینترنت مدرن برداشته شده‌است. اکس‌ام‌ال ویرایشی از اس جی‌ام‌ال است که می‌کوشد فاصله بین سادگی اچ‌تی‌ام‌ال و قدرت اس جی‌ام‌ال پل بزند. در واقع اکس‌ام‌ال زیر مجموعه‌ای از اس جی‌ام‌الاست که صرفاً برای استفاده با وب طراح شده است. پس از ایجاد اکس‌ام‌ال توسّط کنسرسیوم وب جهانگیر (W3C) در سال ۱۹۹۶ (میلادی)، دست‌اندرکاران بسیاری از پروژه‌هایمحاسبات توزیع‌شده به استفاده گسترده از آن روی آوردند.

در حال حاضر، گوناگونی، میزان، و ابعاد فراوان به‌کارگیری اکس‌ام‌ال در اغلب زمینه‌ها و ساختارهای اینترنت امروزین به راستی شگفت‌آور است. فقط به عنوان نمونه، باید یادآور شد که تقریباً تمامی فناوری‌های خدمات وب، گرافیک برداری اندازه پذیر، آردی‌اف، و بسیاری از موارد دیگر، تنها با اکس‌ام‌ال انجام‌پذیر است.

چرایی و چگونگی این امر برای فهم آسانتر و درک همه‌جانبه‌تر اینترنت در حال حاضر، و به ویژه، جهت آشنایی با تدابیری که بشر برای هموار نمودن راه‌های گسترش آن در آینده اتّخاذ خواهد کرد، از اهمّیّت بالایی برخوردار است(ویکیپدیا)

خواندن فایل xml با jdom در جاوا

برای خواندن فایل xml با jdom در جاوا ما از کتابخانه JDOM استفاده میکنیم. این کتابخانه در جاوا موجود نیست و باید آن را به پروژه خود اضافه کنید. برای دانلود کتابخانه JDOM به لینک مراجعه کنید. حال مراحل خواندن فایل  xml با jdom در جاوا به صورت زیر است:

  1. کتابخانه های مرتبط را import کنید.
  2. یک SAXBuilder بسازید
  3. یک Document از فایل xml خود بسازید
  4. عناصر ریشه فایل خود را بخوانید.
  5. سپس متغیر های درونی هر قسمت را بخوانید.

برای خواندن فایل xml در جاوا ما از فایل زیر استفاده میکنیم:

<?xml version="1.0"?>
<class>
   <student rollno="393">
      <firstname>dinkar</firstname>
      <lastname>kad</lastname>
      <nickname>dinkar</nickname>
      <marks>85</marks>
   </student>
   <student rollno="493">
      <firstname>Vaneet</firstname>
      <lastname>Gupta</lastname>
      <nickname>vinni</nickname>
      <marks>95</marks>
   </student>
   <student rollno="593">
      <firstname>jasvir</firstname>
      <lastname>singn</lastname>
      <nickname>jazz</nickname>
      <marks>90</marks>
   </student>
</class>

حال برای خواندن فایل xml با  jdom در جاوا کد زیر را باید زد:

     public static void main(String[] args) {
                try {
                   File inputFile = new File("xmlfile.xml");

                   SAXBuilder saxBuilder = new SAXBuilder();

                   Document document = saxBuilder.build(inputFile);

                   System.out.println("Root element :"
                      + document.getRootElement().getName());

                   Element classElement = document.getRootElement();

                   List<Element> studentList = classElement.getChildren();
                   System.out.println("----------------------------");

                   for (int temp = 0; temp < studentList.size(); temp++) {   
                      Element student = studentList.get(temp);
                      System.out.println("\nCurrent Element :"
                         + student.getName());
                      Attribute attribute =  student.getAttribute("rollno");
                      System.out.println("Student roll no : "
                         + attribute.getValue() );
                      System.out.println("First Name : " + student.getChild("firstname").getText());
                      System.out.println("Last Name : "+ student.getChild("lastname").getText());
                      System.out.println("Nick Name : "+ student.getChild("nickname").getText());
                      System.out.println("Marks : "+ student.getChild("marks").getText());                   
                   }
                }catch(JDOMException e){
                   e.printStackTrace();
                }catch(IOException ioe){
                   ioe.printStackTrace();
                }
             }

همانطور که در کد خواندن فایل  xml با jdom در جاوا  میبینید ابتدا فایل xml خود را درون متغیر inputfile ریختیم.

File inputFile = new File("xmlfile.xml");

سپس SaxBuilder و Document را میسازیم.

                   SAXBuilder saxBuilder = new SAXBuilder();

                   Document document = saxBuilder.build(inputFile);

سپس لیستی از تمام Element های فایل را گرفتیم و آنها را در یک for چاپ کردیم.(حلقه for در کد بالا)

خروجی کد خواندن فایل xml در جاوا به صورت زیر است:

Root element :class
----------------------------

Current Element :student
Student roll no : 393
First Name : dinkar
Last Name : kad
Nick Name : dinkar
Marks : 85

Current Element :student
Student roll no : 493
First Name : Vaneet
Last Name : Gupta
Nick Name : vinni
Marks : 95

Current Element :student
Student roll no : 593
First Name : jasvir
Last Name : singn
Nick Name : jazz
Marks : 90

Download “دانلود سورس خواندن فایل xml با JDOM در جاوا” Read-Xml-File-www.codegate.ir_-1.rar – 24 بار دانلود شده است – 7 کیلوبایت

پسورد: www.codegate.ir