XML এবং JSON হল দুটি জনপ্রিয় ডেটা বিনিময় ফরম্যাট, এবং প্রায়ই একে অপরের মধ্যে রূপান্তর করতে হয়। JSON এবং XML এর মধ্যে রূপান্তর করার জন্য org.json লাইব্রেরি সরাসরি কোন মেথড প্রদান না করলেও, XML ডেটা পড়ে তা JSON ফরম্যাটে রূপান্তর করা সম্ভব। সাধারণত, XML থেকে JSON রূপান্তর করতে org.json.XML ক্লাস ব্যবহার করা হয়।
এখানে XML ডেটাকে JSON ফরম্যাটে রূপান্তর করার জন্য একটি উদাহরণ দেওয়া হলো।
XML থেকে JSON রূপান্তর করার উদাহরণ
XML ডেটাকে JSON ফরম্যাটে রূপান্তর করতে org.json.XML.toJSONObject() মেথড ব্যবহার করা হয়। নিচে একটি উদাহরণ দেওয়া হচ্ছে:
প্রয়োজনীয় লাইব্রেরি
প্রথমে, আপনাকে org.json লাইব্রেরিটি অন্তর্ভুক্ত করতে হবে। Maven ব্যবহার করলে আপনার pom.xml ফাইলে নিচের ডিপেনডেন্সি যোগ করুন:
<dependency>
<groupId>org.json</groupId>
<artifactId>json</artifactId>
<version>20210307</version>
</dependency>
কোড উদাহরণ: XML থেকে JSON রূপান্তর
import org.json.JSONObject;
import org.json.XML;
public class XMLToJSONExample {
public static void main(String[] args) {
try {
// XML স্ট্রিং
String xmlString = "<person>"
+ "<name>John Doe</name>"
+ "<age>30</age>"
+ "<email>john.doe@example.com</email>"
+ "<address>"
+ "<street>123 Main St</street>"
+ "<city>New York</city>"
+ "<zipcode>10001</zipcode>"
+ "</address>"
+ "</person>";
// XML থেকে JSON এ রূপান্তর
JSONObject jsonObject = XML.toJSONObject(xmlString);
// JSON আউটপুট
System.out.println(jsonObject.toString(4)); // 4 হল ইনডেন্টেশন (যাতে JSON ফরম্যাটটি সুন্দরভাবে প্রদর্শিত হয়)
} catch (Exception e) {
e.printStackTrace();
}
}
}
কোড বিশ্লেষণ
- XML.toJSONObject(): এই মেথডটি XML স্ট্রিং গ্রহণ করে এবং এটি একটি
JSONObjectতে রূপান্তর করে। JSON ফরম্যাটে রূপান্তর করার জন্য এটি XML এর ট্যাগগুলিকে কীগুলির হিসেবে বিবেচনা করে। - jsonObject.toString(4): এটি JSON অবজেক্টটিকে স্ট্রিং আউটপুটে রূপান্তর করে এবং
4ইনডেন্টেশন ব্যবহার করে JSON ফরম্যাটটিকে সুন্দরভাবে প্রদর্শন করে।
XML উদাহরণ:
<person>
<name>John Doe</name>
<age>30</age>
<email>john.doe@example.com</email>
<address>
<street>123 Main St</street>
<city>New York</city>
<zipcode>10001</zipcode>
</address>
</person>
JSON আউটপুট:
{
"person": {
"name": "John Doe",
"age": 30,
"email": "john.doe@example.com",
"address": {
"street": "123 Main St",
"city": "New York",
"zipcode": "10001"
}
}
}
এখানে, XML ট্যাগগুলির মানগুলি JSON অবজেক্টের কীগুলির হিসেবে রূপান্তরিত হয়েছে, এবং এটি একটি সুন্দর, পাঠযোগ্য JSON আউটপুট দিয়েছে।
আরও উন্নত কাস্টমাইজেশন
- Attributes Handling: যদি XML ডকুমেন্টে অ্যাট্রিবিউট থাকে, তাহলে
XML.toJSONObject()মেথড সেটিকে@চিহ্ন দিয়ে JSON অবজেক্টে কীগুলির হিসেবে রাখবে। আপনি যদি অ্যাট্রিবিউটগুলো ভিন্নভাবে হ্যান্ডেল করতে চান, তবে অতিরিক্ত কাস্টমাইজেশন করতে হবে। - CDATA Handling: যদি XML ডেটায় CDATA থাকে, তবে সেই অংশটি JSON-এ স্ট্রিং হিসেবে রাখা হবে।
উদাহরণ: XML অ্যাট্রিবিউট
<person name="John Doe" age="30">
<email>john.doe@example.com</email>
</person>
এই XML ডেটা JSON-এ রূপান্তরিত হলে:
{
"person": {
"@name": "John Doe",
"@age": "30",
"email": "john.doe@example.com"
}
}
এখানে, @name এবং @age অ্যাট্রিবিউট হিসেবে উপস্থিত রয়েছে।
সারাংশ
XML থেকে JSON এ রূপান্তর করা org.json.XML.toJSONObject() মেথডের মাধ্যমে সহজেই করা যায়। এই পদ্ধতিটি XML ডেটাকে একটি JSON অবজেক্টে রূপান্তর করতে সহায়তা করে, যা ওয়েব অ্যাপ্লিকেশন বা API-তে ডেটা ইন্টারচেঞ্জের জন্য খুবই কার্যকর। XML ডেটা JSON ফরম্যাটে রূপান্তর করার মাধ্যমে ডেটা হালকা, মানব-পঠনযোগ্য এবং আরও সহজে প্রসেসযোগ্য হয়ে ওঠে।