জাভাতে এক্সএমএল ফাইলটি কীভাবে পড়বেন এবং পার্স করবেন?



জাভা এক্সএমএল পার্সার সম্পর্কিত এই নিবন্ধটি আপনাকে এক্সএমএল পার্সার কী এবং জাভাতে ডোম পার্সার ব্যবহার করে কোনও এক্সএমএল ফাইলকে কীভাবে পার্স করবেন তা বুঝতে সহায়তা করবে।

এক্সএমএল, এক্সটেনসিবল মার্কআপ ল্যাঙ্গুয়েজ এমন একটি মার্কআপ ল্যাঙ্গুয়েজ যা পাঠ্যযোগ্য এমন ফর্ম্যাটে নথিগুলি এনকোডিংয়ের জন্য নিয়মের একটি সেট নির্ধারণ করে। এক্সএমএল পার্সিং ডেটা অ্যাক্সেস বা সংশোধন করার জন্য কোনও এক্সএমএল ডকুমেন্টের মধ্য দিয়ে যাওয়া বোঝায়। একটি এক্সএমএল পার্সার এক্সএমএল ডকুমেন্টে ডেটা অ্যাক্সেস বা সংশোধন করতে প্রয়োজনীয় কার্যকারিতা সরবরাহ করে। এই নিবন্ধে, আসুন ঘুরে দেখি এক্সএমএল পার্সার বিস্তারিতভাবে।

এক্সএমএল পার্সার কী?

দ্য এক্সএমএল পার্সার XML ডকুমেন্টগুলির সাথে কাজ করার জন্য ক্লায়েন্ট অ্যাপ্লিকেশনগুলির জন্য একটি ইন্টারফেস সরবরাহ করে এমন একটি সফ্টওয়্যার লাইব্রেরি বা একটি প্যাকেজ। এটি এক্সএমএল ডকুমেন্টের যথাযথ বিন্যাসের জন্য পরীক্ষা করে এবং এক্সএমএল নথিগুলিকে বৈধতা দেয়।





নিম্নলিখিত চিত্রটি XML পার্সার XML নথিগুলির সাথে কীভাবে ইন্টারঅ্যাক্ট করে তা দেখায়:

মান দ্বারা পাস এবং জাভা রেফারেন্স দ্বারা পাস

xML পার্সার - এডুরেকা আপনি বৈধকরণকে পার্সিংয়ের বাইরে অন্য একটি স্তর হিসাবে ভাবতে পারেন। পার্সিং করার সময় প্রোগ্রামের উপাদানগুলির অংশগুলি সনাক্ত করা হয়, যাচাইকরণকারী পার্সার তাদের ডিটিডি বা স্কিমা দ্বারা নির্ধারিত প্যাটার্নের সাথে তাদের তুলনা করতে পারে, যা তারা খাপ খায়।



জাভা এক্সএমএল পার্সার

এক্সএমএল বিকাশের মৌলিক উপাদানটি এক্সএমএল পার্সিং। জাভা জন্য এক্সএমএল পার্সিং হ'ল স্ট্যান্ডলোন এক্সএমএল উপাদান যা কোনও এক্সএমএল ডকুমেন্টকে ਪਾਰ্স করে (এবং অনেক সময় স্ট্যান্ডএলোন ডিটিডি বা এক্সএমএল স্কিমা) যাতে ব্যবহারকারী প্রোগ্রামটি এটি প্রক্রিয়া করতে পারে। নীচের চিত্রটি এক্সএমএল পার্সারের ইনপুট হিসাবে একটি এক্সএমএল নথি দেখায়

  • একটি এক্সএমএল নথি প্রেরণ করা হয়েছেজাভা জন্য এক্সএমএল পার্সারে ইনপুট হিসাবে
  • ডোম বা স্যাক্স পার্সার ইন্টারফেস এক্সএমএল ডকুমেন্টকে বিশ্লেষণ করে
  • পার্সড এক্সএমএল এর পরে আরও প্রক্রিয়াকরণের জন্য অ্যাপ্লিকেশনটিতে স্থানান্তর করা হবে

জাভার জন্য এক্সএমএল পার্সারটিতে এক্সএসএল স্টাইলশিট ব্যবহার করে এক্সএমএল ডেটা রুপান্তর করার জন্য একটি সংহত এক্সএসএল ট্রান্সফর্মেশন (এক্সএসএলটি) প্রসেসরের অন্তর্ভুক্ত থাকতে পারে। এক্সএসএলটি প্রসেসর ব্যবহার করে আপনি এক্সএমএল নথিগুলি সহজেই এক্সএমএল থেকে এক্সএমএল, এক্সএমএল থেকে এইচটিএমএল বা অন্য কোনও পাঠ্য-ভিত্তিক ফর্ম্যাটে রূপান্তর করতে পারেন।



জাভা এক্সএমএল ডকুমেন্টগুলি পার্স করার জন্য প্রচুর বিকল্প সরবরাহ করে।এসসাধারণভাবে ব্যবহৃত জাভা এক্সএমএল পার্সারগুলির মধ্যে রয়েছে:

  1. ডোম পার্সার
  2. স্যাক্স পার্সার
  3. স্টেক্স পার্সার
  4. জ্যাকএক্সবি

এই নিবন্ধে, আসুন কীভাবে DOM পার্সার ব্যবহার করে কোনও এক্সএমএল ফাইলকে পার্স করা যায় তা পরীক্ষা করে দেখুন।

জাভা এক্সএমএল পার্সার - ডিওএম

বিচার জন্য দাঁড়িয়েছে নথি অবজেক্ট মডেল। ডম পার্সার বাস্তবায়ন এবং শেখার জন্য সবচেয়ে সহজ জাভা এক্সএমএল পার্সার। এটি একটি সম্পূর্ণ এক্সএমএল ডকুমেন্টকে বিশ্লেষণ করে, এটিকে মেমরিতে লোড করে এবং এ নথির উপস্থাপনাআসুন ধারণাটি বোঝার জন্য একটি সাধারণ উদাহরণ বিবেচনা করি।

জাভা হ্যাশম্যাপ কি

ডেমো উদ্দেশ্যে, আমরা নামের একটি ফাইল ব্যবহার করা হবে কর্মচারী.এক্সএমএল । ফাইলটিতে প্রতিটি কর্মীর একটি অনন্য আইডি, প্রথম এবং শেষ নাম, বয়স এবং বেতন থাকে এবং কর্মীরা তাদের আইডি দ্বারা পৃথক হয়।

ডিন উইনচেস্টার 30 2500 স্যাম ডেভিস 22 1500 জ্যাক পেরালটা 24 2000 অ্যামি গ্রিফিন 25 2250

এছাড়াও, কোনও কর্মচারীর ধারণাটি ক্যাপচার করার জন্য, আমরা এর সম্পর্কিত জাভা ক্লাস তৈরি করি, যাকে বলা হয় কর্মচারী.জভা নিচে দেখানো হয়েছে:

প্যাকেজ মাইপ্যাকেজ পাবলিক ক্লাসের কর্মচারী {প্রাইভেট স্ট্রিং আইডি প্রাইভেট স্ট্রিং ফার্স্টনেম প্রাইভেট স্ট্রিং লাস্টনেম প্রাইভেট ইন্ট এজ প্রাইভেট ডাবল বেতন পাবলিক কর্মচারী (স্ট্রিং আইডি, স্ট্রিং ফার্স্টনেম, স্ট্রিং লাস্টনেম, ইনট এজ, ডাবল বেতার) {this.ID = আইডি এটি.পরিচয় নাম this.Lastname = সর্বশেষ নাম this.age = বয়স এই.সালারি = বেতন} @ সার্বজনীন স্ট্রিং toString () {রিটার্ন ''}}

ডোম পার্সার ব্যবহার করে একটি এক্সএমএল ফাইল পার্স করুন

ডকুমেন্ট অবজেক্ট মডেল (ডিওএম) এমন এপিআই সরবরাহ করে যা আপনাকে প্রয়োজনীয় নোডগুলি তৈরি করতে, সংশোধন করতে, মুছতে এবং পুনরায় সাজানোর অনুমতি দেয়। ডিওএম পার্সার পুরো এক্সএমএল ডকুমেন্টকে পার্স করে এবং এক্সএমএল সামগ্রীকে একটি গাছের কাঠামোর মধ্যে লোড করে। ব্যবহার করে নোড এবং নোডলিস্ট ক্লাস, আমরা একটি এক্সএমএল ফাইলের বিষয়বস্তুগুলি পুনরুদ্ধার এবং সংশোধন করতে পারি।

একটি নমুনা এটি একটি এক্সএমএল ফাইলের সামগ্রী লোড করে এবং এর সামগ্রীগুলি নীচে দেখানো হয়:

প্যাকেজ মাইপ্যাকেজ আমদানি java.io.File আমদানি java.io.IOException আমদানি java.util.ArrayList আমদানি java.util.List আমদানি javax.xML.parsers.DocamentBuilder আমদানি javax.xML.parsers.DocamentBuilder ফ্যাক্টরি আমদানি javax.xML.pars.CarsationCars আমদানি org.w3c.dom. ডকুমেন্ট আমদানি org.w3c.dom.Elume আমদানি org.w3c.dom. নোড আমদানি org.w3c.dom.NodeList আমদানি org.xML.sax.SAXException পাবলিক ক্লাস DomParserExample {পাবলিক স্ট্যাটিক শূন্য মূল [] নিবন্ধগুলি) পার্সার কনফিগারেশনএক্সেপশন, স্যাক্সেক্সেপশন, আইওএক্সেপশন th // নথির বিল্ডার ডকুমেন্টবিল্ডার ফ্যাক্টরি পান = ডকুমেন্টবিল্ডার ফ্যাক্টরি.নিউআইন্সট্যান্স () ডকুমেন্টবিল্ডার বিল্ডার = ফ্যাক্টরি.নিউ ডকুমেন্টবিল্ডার () // ইনপুট এক্সএমএল ডকুমেন্টের পার্সন লোড করুন এবং এর একটি উদাহরণ পার্সিয় করুন নথি ক্লাস। ডকুমেন্ট ডকুমেন্ট = বিল্ডার.পারস (নতুন ফাইল ('এমপ্লয়িজ.এক্সএমএল')) কর্মী তালিকাভুক্ত করুন = নতুন অ্যারেলিস্ট () নোডলিস্ট নোডলিস্ট = ডকুমেন্ট.সেট ডকুমেন্টএলিমেন্ট ()।

কোডের সম্পাদন নিম্নলিখিতভাবে ঘটে:

  • প্রথমে আপনাকে অ্যাপ্লিকেশনটিতে ডোম পার্সার প্যাকেজগুলি আমদানি করতে হবে
  • পরবর্তী পদক্ষেপ হ'ল ডকুমেন্টবিল্ডার তৈরি করা অবজেক্ট
  • ডকুমেন্ট অবজেক্টে এক্সএমএল ফাইলটি পড়ুন।
  • ডকুমেন্ট ক্লাসের একটি ইভেন্টে এক্সএমএল ফাইল পার্স এবং সঞ্চয় করুন
  • আপনি যখন টাইপের একটি নোড পাবেন নোড.এলএএমআইএমএনএনওডি , এর সমস্ত তথ্য পুনরুদ্ধার করুন এবং সেগুলি কর্মচারী বর্গের একটি ইভেন্টে সঞ্চয় করুন
  • অবশেষে, সমস্ত সঞ্চিত কর্মীদের তথ্য মুদ্রণ করুন

আউটপুট

জাভা ব্যবহারের তারিখের স্ট্রিং
 

আপনি DOM পার্সার ব্যবহার করে কোনও এক্সএমএল ফাইল পার্স করতে পারেন। ডোম পার্সারের এর সুবিধা এবং অসুবিধা রয়েছে।

ডিওএম পার্সারের সুবিধা এবং অসুবিধা

সুবিধাদি

  • এপিআই ব্যবহার করা খুব সহজ
  • এটি উভয়ই পড়া এবং লেখার ক্রিয়াকলাপ সমর্থন করে
  • পছন্দসই যখন কোনও ডকুমেন্টের বিস্তৃত পৃথক অংশে এলোমেলো অ্যাক্সেসের প্রয়োজন হয়

অসুবিধা

  • এটি স্মৃতিশক্তি অক্ষম। হিসাবেফাইলের আকার বৃদ্ধি পায়, এর কার্যকারিতা খারাপ হয়ে যায় এবং আরও মেমরি গ্রহণ করে
  • জাভাতে উপলব্ধ অন্যান্য এক্সএমএল পার্সারের তুলনায় তুলনামূলকভাবে ধীর

এটি আমাদের এই ‘জাভা এক্সএমএল পার্সার’ নিবন্ধের শেষে নিয়ে আসে।

আপনি যথাসম্ভব অনুশীলন নিশ্চিত করুন এবং আপনার অভিজ্ঞতাটি ফিরিয়ে দিন।

দেখুন বিশ্বজুড়ে ছড়িয়ে থাকা 250,000 এরও বেশি সন্তুষ্ট শিক্ষার্থীর নেটওয়ার্ক সহ একটি বিশ্বস্ত অনলাইন লার্নিং সংস্থা এডুরেকা দ্বারা। আমরা আপনার যাতায়াতের প্রতিটি পদক্ষেপে আপনাকে সহায়তা করতে এখানে এই জাভা সাক্ষাত্কারের প্রশ্নগুলির পাশাপাশি হয়ে উঠার জন্য আমরা একটি পাঠ্যক্রম নিয়ে এসেছি যা জাভা ডেভেলপার হতে চান এমন শিক্ষার্থী এবং পেশাদারদের জন্য তৈরি করা হয়েছে।

আমাদের জন্য একটি প্রশ্ন আছে? দয়া করে এই ‘জাভা এক্সএমএল পার্সার’ এর মন্তব্য বিভাগে উল্লেখ করুন নিবন্ধ এবং আমরা যত তাড়াতাড়ি সম্ভব আপনার কাছে ফিরে আসব।