C# Basit XML Kullanımı

Kruvazör

Ar-Ge Ekibi Lideri
28 Mar 2020
1,785
2,704
Liman


Merhaba arkadaşlar
Bugün sizlerle C# dilinde XML kullanımını ve genel XML kavramını öğreneceğiz.

Herkes hayatında en az bir kere XML dosyaları ile karşılaşmıştır.
Çeşitli programların çıktılarında ya da veri saklamak amaçlarıyla sıklıkla görülür.
O halde XML kavramının ne olduğundan başlayalım.

7a5l919.jpg



XML NEDİR?
4gzd65k.png


Yukarıda da görselini koyduğum gibi
XML bir metin işaretleme dilidir

Metin işaretleme dili kavramı nereden tanıdık geliyor acaba??

piinar5.jpg

Evet, doğru tahmin.
HTML'de bir metin işaretleme dilidir.

XML Teknolojisi Nerelerde Kullanılır?

* Web siteleri için site haritası oluşturmak.
* Veritabanlarının aktarılması.
* Finansal verilerin toplanması.
* Dosya sistemlerinin düzenlenmesi.
* Bilimsel içeriğe sahip dokümanların depolanması
* Yazılım paketleri içerisindeki bağımlılıkların oluşturulması gibi alanlarda kullanılmaktadır.


C# VE XML (Dosya oluşturma/okuma)

En başta kütüphanemizi ekleyelim
C#:
using System.Xml;

Ve kodlarımızı yazmaya başlayalım


XML DOSYASI YAZMA
C#:
   string isim;
            Console.WriteLine("isim gir");  //console ekranına yazdırma
            isim = Console.ReadLine(); //kullanıcıdan veri alma
            string xmlDosyasi = @"dosya.xml";   //xml dosyası programın exe dosyasının içine atılsın
          
            XmlWriter xmlYaz = XmlWriter.Create(xmlDosyasi);   //xml writer tanımlıyorum ve xml dosyası oluşturuyorum

            xmlYaz.WriteStartDocument();  //xml içeriğini yazıyorum

            xmlYaz.WriteStartElement("Kişiler");  //element
            xmlYaz.WriteString(isim);  //isim değişkeni buraya gelecek
            xmlYaz.WriteEndElement();  //element close

            xmlYaz.WriteEndDocument();   //yazmayı bitirme
            xmlYaz.Close(); //bağlantıyı kesme

XML DOSYASI OKUMA
(farklı yöntemler de mevcut fakat basitçe anlatıyorum, bir sonraki konumda detaylı gireceğim bu kısımlara)
C#:
 string xmlOkumaDosyası = @"dosya.xml"; //xml dosyası programın exe dosyasının içine atılsın

            XmlTextReader XmlOkuyucu = new XmlTextReader(xmlOkumaDosyası); //xml okuyucu tanımlıyorum

            while (XmlOkuyucu.Read())   //while döngüsü ile dosyanın sonuna kadar okumasını sağlıyorum
            {
                if (XmlOkuyucu.NodeType == XmlNodeType.Element)  //dosya üzerinde yazdığım elementi sorgulatıyorum
                {
                    Console.WriteLine("Etiket: {0} \nİçerik: {1}", XmlOkuyucu.Name, XmlOkuyucu.ReadElementContentAsString());  //bir önceki verdiğim örnekteki değerleri çekiyorum
                }       
            }
            
            XmlOkuyucu.Close();
EKRAN ÇIKTISI VE XML DOSYASI GÖRÜNTÜLERİ
r2d0amr.jpg

mn6spoc.jpg


Okuduğunuz için teşekkürler.





 

Adanalıtrojan

Kıdemli Üye
25 Haz 2021
2,026
1,057
17
Konya Ovası Askeri Tesislerinde


Merhaba arkadaşlar
Bugün sizlerle C# dilinde XML kullanımını ve genel XML kavramını öğreneceğiz.

Herkes hayatında en az bir kere XML dosyaları ile karşılaşmıştır.
Çeşitli programların çıktılarında ya da veri saklamak amaçlarıyla sıklıkla görülür.
O halde XML kavramının ne olduğundan başlayalım.

7a5l919.jpg



XML NEDİR?
4gzd65k.png


Yukarıda da görselini koyduğum gibi
XML bir metin işaretleme dilidir

Metin işaretleme dili kavramı nereden tanıdık geliyor acaba??

piinar5.jpg

Evet, doğru tahmin.
HTML'de bir metin işaretleme dilidir.

XML Teknolojisi Nerelerde Kullanılır?

* Web siteleri için site haritası oluşturmak.
* Veritabanlarının aktarılması.
* Finansal verilerin toplanması.
* Dosya sistemlerinin düzenlenmesi.
* Bilimsel içeriğe sahip dokümanların depolanması
* Yazılım paketleri içerisindeki bağımlılıkların oluşturulması gibi alanlarda kullanılmaktadır.


C# VE XML (Dosya oluşturma/okuma)

En başta kütüphanemizi ekleyelim
C#:
using System.Xml;

Ve kodlarımızı yazmaya başlayalım


XML DOSYASI YAZMA
C#:
   string isim;
            Console.WriteLine("isim gir");  //console ekranına yazdırma
            isim = Console.ReadLine(); //kullanıcıdan veri alma
            string xmlDosyasi = @"dosya.xml";   //xml dosyası programın exe dosyasının içine atılsın
         
            XmlWriter xmlYaz = XmlWriter.Create(xmlDosyasi);   //xml writer tanımlıyorum ve xml dosyası oluşturuyorum

            xmlYaz.WriteStartDocument();  //xml içeriğini yazıyorum

            xmlYaz.WriteStartElement("Kişiler");  //element
            xmlYaz.WriteString(isim);  //isim değişkeni buraya gelecek
            xmlYaz.WriteEndElement();  //element close

            xmlYaz.WriteEndDocument();   //yazmayı bitirme
            xmlYaz.Close(); //bağlantıyı kesme

XML DOSYASI OKUMA
(farklı yöntemler de mevcut fakat basitçe anlatıyorum, bir sonraki konumda detaylı gireceğim bu kısımlara)
C#:
 string xmlOkumaDosyası = @"dosya.xml"; //xml dosyası programın exe dosyasının içine atılsın

            XmlTextReader XmlOkuyucu = new XmlTextReader(xmlOkumaDosyası); //xml okuyucu tanımlıyorum

            while (XmlOkuyucu.Read())   //while döngüsü ile dosyanın sonuna kadar okumasını sağlıyorum
            {
                if (XmlOkuyucu.NodeType == XmlNodeType.Element)  //dosya üzerinde yazdığım elementi sorgulatıyorum
                {
                    Console.WriteLine("Etiket: {0} \nİçerik: {1}", XmlOkuyucu.Name, XmlOkuyucu.ReadElementContentAsString());  //bir önceki verdiğim örnekteki değerleri çekiyorum
                }      
            }
           
            XmlOkuyucu.Close();
EKRAN ÇIKTISI VE XML DOSYASI GÖRÜNTÜLERİ
r2d0amr.jpg

mn6spoc.jpg


Okuduğunuz için teşekkürler.





Eline sağlık abi
 

Kruvazör

Ar-Ge Ekibi Lideri
28 Mar 2020
1,785
2,704
Liman
Eline emeğine sağlık Canım. Güzel anlatım. 😁
teşekkürler kral :)
Eline sağlık abi
teşekkür ederim.
Güzel bir içerik olmuş, devamını bekliyoruz. :)
sağolun hocam :)
eyvallah
Elinize sağlık hocam, bir dahaki konunuzu heyecanla bekliyorum.
çok yakında sizlerle hocam :)
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.