2013-12-09 5 views
5

私はXmlReaderからファイルサイズを計算する方法があるかどうかを調べようとしています。私は、サイズを決定するのに役立つ読者オブジェクトに何も表示されません。何か案は?ありがとうございました!XmlReaderに読み込まれた場合、xmlのサイズを計算することは可能ですか?

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

End Using 
+1

サイズを知る必要のためのあなたの理由は何ですか?回避策を見つけるのに役立つかもしれません。 –

+0

これは、何らかの目的でユーザーに表示するためのものです。 – Jyina

答えて

4

XmlReaderが知られているか明確な大きさを持っているものから読まれない場合があります。あなたの最良の賭けは、XmlReaderが何を読んでいるのかで何かをすることでしょう。例えば。 Streamがあり、Stream.Lengthを取得しようとします(一部のストリームは長さがないため、これをサポートしていません)。これにはGetXMLを変更する必要があります。

+0

また、すべてのストリームに長さがあるわけではありません。 –

+0

@JohnSaunders良い点。ドキュメントには 'Length'がスローされるかもしれないことが示されていますが、私の答えではそれを書き留めておくのは良いことです。 –

1

あなたがソースとしてのXmlReaderを使用する必要がある場合、これはファイルサイズ(C#の)にあなたが近づく必要があります。

int sizeInBytes = Encoding.ASCII.GetBytes(reader.ReadOuterXml()).Length; 
+0

はい、XmlReaderを使用する必要があります。ありがとうございました。私はそれを試してみる。 – Jyina

関連する問題