Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如果将xml加载到XmlReader中,是否可以计算xml的大小?_C#_.net_Vb.net - Fatal编程技术网

C# 如果将xml加载到XmlReader中,是否可以计算xml的大小?

C# 如果将xml加载到XmlReader中,是否可以计算xml的大小?,c#,.net,vb.net,C#,.net,Vb.net,我试图找出是否有一种方法可以从XmlReader计算文件大小。我在reader对象上没有看到任何有助于确定大小的内容。有什么想法吗?谢谢大家! Using reader As Xml.XmlReader = GetXML(columnName.ToString()) End Using XmlReader可能无法读取具有已知或确定大小的内容。最好的办法是使用XmlReader正在读取的任何内容的源代码。例如,您可能有一个流并尝试获取(有些流不支持此功能,因为它们没有长度)。这将需要修改Get

我试图找出是否有一种方法可以从XmlReader计算文件大小。我在reader对象上没有看到任何有助于确定大小的内容。有什么想法吗?谢谢大家!

Using reader As Xml.XmlReader = GetXML(columnName.ToString())

End Using

XmlReader
可能无法读取具有已知或确定大小的内容。最好的办法是使用
XmlReader
正在读取的任何内容的源代码。例如,您可能有一个
并尝试获取(有些流不支持此功能,因为它们没有长度)。这将需要修改
GetXML

如果必须使用XmlReader作为源代码,这将使您接近文件大小(c#):


您需要知道尺码的原因是什么?这可能有助于找到解决方法。它只是为了向用户显示某些目的。是的,我必须使用XmlReader。非常感谢。我会试试看。而且,并不是所有的流都有长度。@JohnSaunders的观点很好。文档显示
Length
可能会抛出,但在我的回答中注意到这一点很好。
int sizeInBytes = Encoding.ASCII.GetBytes(reader.ReadOuterXml()).Length;