0
我已经打开一个约3.5兆字节的文件上的字节流。内容是Int32在数组中的内容,每个数组由一个唯一的64位幻数分隔,然后是一些带有维数的Int32s,随后是数据。从字节流中读取时出错:'System.ArgumentOutOfRangeException'
我对通过文件半路上,阵列548的1001,当我得到这个错误:
Exception thrown: 'System.ArgumentOutOfRangeException' in mscorlib.dll
Additional information: MemoryStream length must be non-negative and less than 2^31 - 1 - origin.
在这条线上出现的错误:
S.Position = ByteStart + 8
S
是流。 ByteStart
是873552.加法产生正确的值873560.该文件比这长得多。任何人都可以提供一个建议,为什么我可能会得到这个错误?
您只描述了部分问题,并且描述了您的想法。可能发生的事情与您的想法有很大不同。因此,请发布[mcve](强调“最小”部分。) –
此错误表示您将Position设置为大于int.MaxValue(2147483647)的值。 – Evk
@evk,不,这不是错误信息的说法;-)(长度必须是“非负值”,小于“2^31 - 1 - 原点”) – elgonzo