首页 / 知识
关于.net:如何在C#3.5中流式读取大型XML文件
2023-04-14 07:23:00

How to do streaming read of a large XML file in C# 3.5如何在不包含整个文件到内存中的XDocument实例的情况下,在根元素正下方包含xs:sequence的大型XML文件上进行流式读取? 使用SAX样式的元素解析器和XmlReader.Create创建的XmlTextReader类是一个好主意,是的。这是来自CodeGuru的稍作修改的代码示例:
我无法添加评论,因为我刚刚注册,但是Hirvox发布并当前被选择为答案的代码示例中存在错误。使用静态 当前:
已修复:
该代码示例尝试将XmlReader样式的代码转换为SAX样式的代码-如果您要从头开始编写代码,则只按预期使用XmlReader-拉而不是Push。 我对提到" xs:sequence "感到困惑-这是一个XML Schema元素。 您是否要打开大型XML Schema文件?您是否正在打开基于该架构的大型XML文件?还是您要打开一个大型XML文件并同时对其进行验证? 在任何情况下,使用标准XmlReader(或XmlValidatingReader)都不会给您带来问题。 使用XMLReader读取XML:http://msdn.microsoft.com/zh-cn/library/9d83k261(VS.80).aspx 这里是方法:http://support.microsoft.com/kb/301228/zh-cn仅记住您不应该使用XmlTextReader,而应将XmlReader与XmlReader.Create 结合使用 如果您要使用对象模型(即XElement \\\\\\\\ XDocument)来查询XML,我认为这是不可能的。显然,如果不读取足够的数据,就无法构建XML对象树。但是,您可以使用XmlReader类。
|
最新内容
相关内容
linux命令添加文件?
linux命令添加文件?,工作,简介,数据,系统,文件,命令,操作,文件名,内容,终端,linux哪些指令可以创建文件终端下键入:touch加文件名,这样就创建了linux文件中剪切命令?
linux文件中剪切命令?,位置,系统,工作,命令,发行,连续,标准,终端,文件,目录,linux怎么粘贴粘贴与复制快捷键 Shift + Ctrl + c:复制。Shift + Clinux存储文件命令?
linux存储文件命令?,系统,地址,工作,命令,软件,电脑,标准,底部,信息,文件,linux系统常用操作命令1、linux常用命令有pwd命令、cd命令、ls命令linux命令移除文件夹?
linux命令移除文件夹?,命令,文件夹,通用,不了,数据,名称,档案,系统,文件,目录,删除文件夹中所有文件的linux命令(创建和删除文件和文件夹的lin在linux文件后加命令?
在linux文件后加命令?,系统,工作,命令,工具,电脑,基础,管理,情况,第一,简介,Linux文件相关命令命令一:cat cat命令应该是在Linux中查看文件内容linux命令删除文件夹?
linux命令删除文件夹?,系统,名称,环境,文件夹,不了,命令,文件,数据,档案,目录,删除文件夹命令linuxLinux的文件和目录的删除命令有:rm、rmdir、linux命令看文件编码?
linux命令看文件编码?,状态,系统,文件,工具,名称,数据,命令,格式,汉字,以下,Linux如何使用enca查看文件编码并转换1、在Linux中查看文件编码可linux编辑文件的命令?
linux编辑文件的命令?,系统,地址,工作,状态,命令,电脑,信息,管理,目录,终端,linux系统常用操作命令linux常用命令有pwd命令、cd命令、ls命令、linux命令行关掉文件?
linux命令行关掉文件?,地址,状态,工作,系统,信息,命令,名字,电脑,编辑,文件,linux:命令行中对文件进行编辑后怎么退出到命令行界面1、如果在命linux分隔文件命令?
linux分隔文件命令?,系统,信息,文件,命令,位置,指令,文件夹,目录,前缀,方法,linux系统下大文件的分割/搜索/导出split命令分割文件成每个文件1linux改文件权限命令?
linux改文件权限命令?,系统,工具,档案,权限,文件,信息,命令,目录,选项,用户,在linux系统中修改文件权限使用的命令是在 Linux 中,要更改一个文linux命令交换文件名?
linux命令交换文件名?,命令,文件,数据,名称,工具,地址,软件,系统,基础知识,文件名,linux中用什么命令移修改文件夹名1、linux下使用mv命令来移