C#-এ XML ডকুমেন্ট তৈরি এবং সংরক্ষণ করার জন্য বেশ কিছু লাইব্রেরি রয়েছে, যার মধ্যে System.Xml
নেমস্পেসের ক্লাসগুলি সবচেয়ে জনপ্রিয়। XML ডকুমেন্ট তৈরি করার জন্য XmlDocument
বা XDocument
ক্লাস ব্যবহার করা যায়, তবে XDocument
অধিক আধুনিক এবং LINQ সাপোর্ট করে, তাই এটি বর্তমানে বেশি ব্যবহৃত হয়।
এখানে XDocument
ব্যবহার করে XML ডকুমেন্ট তৈরি করা এবং সংরক্ষণের প্রক্রিয়া ব্যাখ্যা করা হবে।
XDocument
ব্যবহার করে XML ডকুমেন্ট তৈরি করাXDocument
ক্লাস দিয়ে সহজেই XML ডকুমেন্ট তৈরি করা যায়। নিচে একটি উদাহরণ দেওয়া হলো, যেখানে একটি পণ্য সম্পর্কিত তথ্য (Product) XML ফরম্যাটে সংরক্ষণ করা হয়েছে।
using System;
using System.Xml.Linq;
class Program
{
static void Main()
{
// XDocument তৈরি করা
XDocument doc = new XDocument(
new XElement("Products", // Root element
new XElement("Product", // First Product element
new XElement("ProductID", 1),
new XElement("ProductName", "Product1"),
new XElement("Category", "Category1"),
new XElement("Price", 20.5)
),
new XElement("Product", // Second Product element
new XElement("ProductID", 2),
new XElement("ProductName", "Product2"),
new XElement("Category", "Category1"),
new XElement("Price", 30.0)
),
new XElement("Product", // Third Product element
new XElement("ProductID", 3),
new XElement("ProductName", "Product3"),
new XElement("Category", "Category2"),
new XElement("Price", 15.5)
)
)
);
// XML ডকুমেন্ট সংরক্ষণ করা
doc.Save("products.xml");
Console.WriteLine("XML file has been saved as 'products.xml'.");
}
}
ব্যাখ্যা:
XElement
ব্যবহার করে XML ট্যাগ তৈরি করা হয়।products.xml
নামে XML ফাইলটি সংরক্ষিত হবে।আউটপুট (XML ফাইল):
<Products>
<Product>
<ProductID>1</ProductID>
<ProductName>Product1</ProductName>
<Category>Category1</Category>
<Price>20.5</Price>
</Product>
<Product>
<ProductID>2</ProductID>
<ProductName>Product2</ProductName>
<Category>Category1</Category>
<Price>30</Price>
</Product>
<Product>
<ProductID>3</ProductID>
<ProductName>Product3</ProductName>
<Category>Category2</Category>
<Price>15.5</Price>
</Product>
</Products>
এটি একটি সাধারণ XML ডকুমেন্ট, যেখানে Products রুট এলিমেন্ট হিসেবে রয়েছে এবং এর অধীনে একাধিক Product এলিমেন্ট রয়েছে।
একটি XML ডকুমেন্ট যদি আগে থেকেই সংরক্ষিত থাকে, তাহলে নতুন ডেটা সংযোজন করার জন্য XDocument
ব্যবহার করা যেতে পারে।
using System;
using System.Xml.Linq;
class Program
{
static void Main()
{
// বিদ্যমান XML ফাইল লোড করা
XDocument doc = XDocument.Load("products.xml");
// নতুন পণ্য যোগ করা
doc.Root.Add(
new XElement("Product",
new XElement("ProductID", 4),
new XElement("ProductName", "Product4"),
new XElement("Category", "Category2"),
new XElement("Price", 25.0)
)
);
// পরিবর্তিত XML ডকুমেন্ট পুনরায় সংরক্ষণ করা
doc.Save("products.xml");
Console.WriteLine("New product has been added to the XML file.");
}
}
ব্যাখ্যা:
এখন products.xml
ফাইলটি নতুন পণ্য সহ আপডেট হবে।
XML ডকুমেন্ট থেকে ডেটা পড়তে LINQ to XML ব্যবহার করা হয়। উদাহরণস্বরূপ, XML ফাইল থেকে পণ্যের নাম এবং দাম বের করা:
using System;
using System.Linq;
using System.Xml.Linq;
class Program
{
static void Main()
{
// XML ফাইল লোড করা
XDocument doc = XDocument.Load("products.xml");
// LINQ কুয়েরি দিয়ে পণ্যের নাম এবং দাম বের করা
var productInfo = from product in doc.Descendants("Product")
select new
{
ProductName = product.Element("ProductName").Value,
Price = product.Element("Price").Value
};
// ফলাফল প্রিন্ট করা
foreach (var product in productInfo)
{
Console.WriteLine($"Product Name: {product.ProductName}, Price: {product.Price}");
}
}
}
আউটপুট:
Product Name: Product1, Price: 20.5
Product Name: Product2, Price: 30
Product Name: Product3, Price: 15.5
Product Name: Product4, Price: 25
এখানে Descendants("Product")
ব্যবহার করে সব Product এলিমেন্ট থেকে ডেটা একত্রিত করা হয়েছে এবং Element("ProductName")
ও Element("Price")
দিয়ে পণ্যের নাম এবং দাম বের করা হয়েছে।
C#-এ XML ডকুমেন্ট তৈরি করা এবং সংরক্ষণ করা খুবই সহজ, বিশেষ করে XDocument ক্লাস ব্যবহার করে। XML ফাইল তৈরি, ডেটা সংযোজন এবং তথ্য পড়ার জন্য LINQ to XML একটি অত্যন্ত শক্তিশালী এবং সহজ পদ্ধতি। XDocument
এর মাধ্যমে আপনি XML ডকুমেন্টের কার্যকরী পরিচালনা করতে পারবেন, যা বিভিন্ন ডেটা স্টোরেজ এবং এক্সচেঞ্জের জন্য অত্যন্ত কার্যকরী।
common.read_more