在.NET Framework中轻松处理XML数据(1-1)
??在.NET Framework中,XmlTextReader和XmlTextWriter类供给了对xml数据的读和写把持。在本文中,作者讲述了XML浏览器(Reader)的系统结构及它们怎样与XMLDOM 和SAX 说明器联合。作者也演示了怎么样应用浏览器分析和验证XML文档,怎么样创立格局良好的XML文档,以及怎么样用函数读/写基于Base64和BinHex编码的大型的XML文档。最后,作者讲了怎么样实现一个基于流的读/写分析器,它把读写器都封装在一个单独的类里。
??大概三年前,我参加了一个软件研究会,主题是“没有XML,就没有编程的未来”。XML确实也在一步一步的发展,它已经嵌进到. NET Framework中了。在本文中,我将讲解. NET Framework中用于处理XML文档的API的角色和它的内部特征,然后我将演示一些常用的功效。
??从MSXML到.net的XML
??在. NET Framework呈现之前,你习惯应用MSXML服务----一个基于COM的类库---写windows的XML的驱动程序。不像. NET Framework中的类,MSXML类库的部分代码比API更深,它完整的嵌在把持系统的底层。MSXML的确能够与你的利用程序通信,但是它不能真正的与外部环境联合。
??MSXML类库能在win32中被导进,也能在CLR中应用,但它只能作为一个外部服务器组件应用。但是基于.NET Framework的利用程序能直接的用XML类与.NET Framework 的其它命名空间整合应用,并且写出来的代码易于浏览。
??作为一个独立的组件,MSXML分析器供给了一些高级的特征如异步分析。这个特征在.NET Framework中的XML类及.NET Framework的其它类都没有供给,但是,NET Framework中的XML类与其它的类整合可以很轻易的获得雷同的功效,在这个基础上你可以增加更多的功效。
??.NET Framework中的XML类供给了基础的分析、查询、转换XML数据的功效。在.NET Framework中,你可以找到支撑Xpath查询和XSLT转换的类,及读/写XML文档的类。另外,.NET Framework也包含了其它处理XML的类,例如对象的序列化(XmlSerializer和the SoapFormatter类),利用程序配置(AppSettingsReader类),数据存储(DataSet类)。在本文中,我只讨论实现基础XML I/O把持的类。
??XML分析模式
??既然XML是一种标记语言,就应当有一种工具按必定的语法来分析和懂得存储在文档中信息。这个工具就是XML分析器---一个组件用于读标记文本并返回指定平台的对象。
??所有的XML分析器,不管它属于哪个把持平台,不过乎都分以下的两类:基于树或者基于事件的处理器。这两类通常都是用XMLDOM(the Microsoft XML Document Object Model)和SAX(Simple API for XML)来实现。XMLDOM分析器是一个普通的基于树的API---它把XML文档当成一个内存结构树浮现。SAX分析器是基于事件的API----它处理每个在XML数据流中的元素(它把XML数据放进流中再进行处理)。通常,DOM能被一个SAX流载进并履行,因此,这两类的处理不是相互排挤的。
??总的来说,SAX分析器与XMLDOM分析器正好相反,它们的分析模式存在着极大的差别。XMLDOM被很好的定义在它的functionalition聚集里面,你不能扩大它。当它在处理一个大型的文档时,它要占用很大内存空间来处理functionalition这个宏大的聚集。
??SAX分析器利用客户端利用程序通过现存的指定平台的对象的实例往处理分析事件。SAX分析器把持全部处理过程,把数据“推出”到处理程序,该处理程序依次接收或拒尽处理数据。这种模式的长处是只需很少的内存空间。
??.NET Framework完整支撑XMLDOM模式,但它不支撑SAX模式。为什么呢?由于.NET Framework支撑两种不同的分析模式:XMLDOM分析器和XML浏览器。它显然不支撑SAX分析器,但这并不意味它没有供给类似SAX分析器的功效。通过XML浏览器SAX的所有的功效都能很轻易的实现及更有效的应用。不像SAX分析器,.NET Framework的浏览器全部都运作在客户端利用程序下面。这样,利用程序本身就可以只把真正需要的数据“推出”,然后从XML数据流中跳出来。而SAX分析模式要处理所有的对利用程序有用和无用的信息。
??浏览器是基于.NET Framework流模式工作的,它的工作方法类似于数据库的游标。有趣的是,实现类似游标分析模式的类供给对.NET Framework中的XMLDOM分析器的底层支撑。XmlReader、XmlWriter两个抽象类是所有.NET Framework中XML类的基础类,包含XMLDOM类、ADO.NET驱动类及配置类。所以在.NET Framework中你有两种可选的方法往处理XML数据。用XmlReader和XmlWriter类直接处理XML数据,或者用XMLDOM模式处理。更多的关于在.NET Framework中读文档的先容可以参见MSDN 2002 年八月刊的Cutting Edge栏目文章。
以上就是在.NET Framework中轻松处理XML数据(1-1) 的内容,更多相关内容请关注PHP中文网(www.php.cn)!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



.NET Framework 4 diperlukan oleh pembangun dan pengguna akhir untuk menjalankan versi terkini aplikasi pada Windows. Walau bagaimanapun, semasa memuat turun dan memasang .NET Framework 4, ramai pengguna mengadu bahawa pemasang berhenti di tengah jalan, memaparkan mesej ralat berikut - " .NET Framework 4 belum dipasang kerana Muat turun gagal dengan kod ralat 0x800c0006 ". Jika anda juga mengalaminya semasa memasang .NETFramework4 pada peranti anda maka anda berada di tempat yang betul

Setiap kali PC Windows 11 atau Windows 10 anda mempunyai masalah naik taraf atau kemas kini, anda biasanya akan melihat kod ralat yang menunjukkan sebab sebenar di sebalik kegagalan. Walau bagaimanapun, kadangkala kekeliruan boleh timbul apabila peningkatan atau kemas kini gagal tanpa kod ralat dipaparkan. Dengan kod ralat yang berguna, anda tahu dengan tepat di mana masalahnya supaya anda boleh cuba membetulkannya. Tetapi kerana tiada kod ralat muncul, ia menjadi mencabar untuk mengenal pasti isu dan menyelesaikannya. Ini akan mengambil banyak masa anda untuk mengetahui sebab di sebalik ralat. Dalam kes ini, anda boleh cuba menggunakan alat khusus yang dipanggil SetupDiag yang disediakan oleh Microsoft yang membantu anda mengenal pasti dengan mudah sebab sebenar di sebalik ralat.
![SCNotification telah berhenti berfungsi [5 langkah untuk membetulkannya]](https://img.php.cn/upload/article/000/887/227/168433050522031.png?x-oss-process=image/resize,m_fill,h_207,w_330)
Sebagai pengguna Windows, anda mungkin akan menghadapi ralat SCNotification telah berhenti berfungsi setiap kali anda memulakan komputer anda. SCNotification.exe ialah fail pemberitahuan sistem Microsoft yang ranap setiap kali anda memulakan PC anda kerana ralat kebenaran dan kegagalan rangkaian. Ralat ini juga dikenali dengan nama acaranya yang bermasalah. Jadi anda mungkin tidak melihat ini sebagai SCNotification telah berhenti berfungsi, tetapi sebagai pepijat clr20r3. Dalam artikel ini, kami akan meneroka semua langkah yang anda perlu ambil untuk membetulkan SNotification telah berhenti berfungsi supaya ia tidak mengganggu anda lagi. Apakah itu SNotification.e

Python melaksanakan penapisan dan penapisan data XML (eXtensibleMarkupLanguage) ialah bahasa penanda yang digunakan untuk menyimpan dan menghantar data Ia fleksibel dan berskala dan sering digunakan untuk pertukaran data antara sistem yang berbeza. Apabila memproses data XML, kami selalunya perlu menapis dan menapisnya untuk mengekstrak maklumat yang kami perlukan. Artikel ini akan memperkenalkan cara menggunakan Python untuk menapis dan menapis data XML. Import modul yang diperlukan Sebelum memulakan, kami

Perkembangan teknologi kecerdasan buatan (AI) sedang giat dijalankan hari ini, dan ia telah menunjukkan potensi dan pengaruh yang besar dalam pelbagai bidang. Hari ini Dayao akan berkongsi dengan anda 4 rangka kerja projek berkaitan LLM model AI sumber terbuka .NET, dengan harapan dapat memberi anda sedikit rujukan. https://github.com/YSGStudyHards/DotNetGuide/blob/main/docs/DotNet/DotNetProjectPicks.mdSemanticKernelSemanticKernel ialah kit pembangunan perisian sumber terbuka (SDK) yang direka untuk menyepadukan model bahasa besar (LLM) seperti OpenAI, Azure

Sama ada anda seorang pemula atau profesional yang berpengalaman, menguasai C# akan membuka jalan untuk kerjaya anda.

Pengguna Microsoft Windows yang telah memasang Microsoft.NET versi 4.5.2, 4.6 atau 4.6.1 mesti memasang versi Microsoft Framework yang lebih baharu jika mereka mahu Microsoft menyokong rangka kerja melalui kemas kini produk masa hadapan. Menurut Microsoft, ketiga-tiga rangka kerja akan menghentikan sokongan pada 26 April 2022. Selepas tarikh sokongan tamat, produk tidak akan menerima "pembetulan keselamatan atau sokongan teknikal." Kebanyakan peranti rumah sentiasa dikemas kini melalui kemas kini Windows. Peranti ini sudah mempunyai versi rangka kerja yang lebih baharu yang dipasang, seperti .NET Framework 4.8. Peranti yang tidak mengemas kini secara automatik boleh

Sudah seminggu sejak kita bercakap tentang pepijat mod selamat baharu yang menjejaskan pengguna yang memasang KB5012643 untuk Windows 11. Isu menjengkelkan ini tidak muncul dalam senarai isu yang diketahui yang disiarkan oleh Microsoft pada hari pelancaran, lantas mengejutkan semua orang. Nah, apabila anda fikir keadaan tidak akan menjadi lebih buruk, Microsoft menjatuhkan bom lain untuk pengguna yang telah memasang kemas kini kumulatif ini. Windows 11 Build 22000.652 menyebabkan lebih banyak masalah Jadi syarikat teknologi memberi amaran kepada pengguna Windows 11 bahawa mereka mungkin mengalami masalah melancarkan dan menggunakan beberapa aplikasi .NET Framework 3.5. Bunyi biasa? Tapi tolong jangan terkejut
