gpt4 book ai didi

c# - 得到一个不正确的 OutOfRange 异常

转载 作者:太空宇宙 更新时间:2023-11-03 17:32:00 24 4
gpt4 key购买 nike

我似乎得到了一个 OutOfRangeException 声明如下:“Index out of the table limit”(不是准确的翻译,我的 VS 是法语),这是相关代码:

pntrs = new int[Pntrnum];
for (int i = 0; i < Pntrnum; i++)
{
stream.Position = Pntrstrt + i * 0x20;
stream.Read(data, 0, data.Length);
pntrs[i] = BitConverter.ToInt32(data, 0);
}

Strs = new string[Pntrnum];
for (int i = 0; i < Pntrnum; i++)
{
byte[] sttrings = new byte[pntrs[i + 1] - pntrs[i]];//the exception occures here !
stream.Position = pntrs[i];
stream.Read(sttrings, 0, sttrings.Length);
Strs[i] = Encoding.GetEncoding("SHIFT-JIS").GetString(sttrings).Split('\0')[0].Replace("[FF00]", "/et").Replace("[FF41]", "t1/").Replace("[FF42]", "t2/").Replace("[FF43]", "t3/").Replace("[FF44]", "t4/").Replace("[FF45]", "t5/").Replace("[FF46]", "t6/").Replace("[FF47]", "t7/").Replace("[0a]", "\n");

ListViewItem item = new ListViewItem(new string[]
{
i.ToString(),
pntrs[i].ToString("X"),
Strs[i],
Strs[i],
});
listView1.Items.AddRange(new ListViewItem[] {item});
}

我做错了什么吗?

最佳答案

C# 数组是零索引的;也就是说,数组索引从零开始(在您的情况下,您在 pntrs 中有从 0 到 Pntrnum-1 的元素),所以当 i == Pntrnum - 1 pntrs[i + 1] 尝试访问 pntrs

范围之外的元素

关于c# - 得到一个不正确的 OutOfRange 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17432029/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com