C# 字节算术异常
我试图从一个jpg文件中获取所有字节,并将其作为一个有趣的练习进行操作。 我得到每个字节并从1中减去它,然后将结果添加到另一个字节数组中C# 字节算术异常,c#,C#,我试图从一个jpg文件中获取所有字节,并将其作为一个有趣的练习进行操作。 我得到每个字节并从1中减去它,然后将结果添加到另一个字节数组中 byte[] f = File.ReadAllBytes("aaa.jpg"); byte[] fo = null; for(int i = 0;i<=f.Length;i++) { fo[i] = (byte)(f[i] - 1); } MessageBox.Show("done");
byte[] f = File.ReadAllBytes("aaa.jpg");
byte[] fo = null;
for(int i = 0;i<=f.Length;i++)
{
fo[i] = (byte)(f[i] - 1);
}
MessageBox.Show("done");
byte[]f=File.ReadAllBytes(“aaa.jpg”);
字节[]fo=null;
对于(int i=0;i您需要实例化fo byte[]数组。在循环的第一次迭代中,您正在访问indexer属性。由于indexer属性属于一个对象,您将获得对象引用null异常,因为数组未实例化
byte[] fo = new byte[f.Length];
byte[]fo=f.Select(b=>unchecked((byte)(b-1)).ToArray();
;unchecked
-如果您想将00
转换成FF
静默(无溢出异常
)byte[]fo=Array.ConvertAll(f,b=>--b);