C# 如何循环遍历字节数组中每个索引处的数字?
我正在编写一个将xml解析为字节数组的程序,需要检查字节数组中某些索引处的数值 例如,如果C# 如何循环遍历字节数组中每个索引处的数字?,c#,arrays,foreach,C#,Arrays,Foreach,我正在编写一个将xml解析为字节数组的程序,需要检查字节数组中某些索引处的数值 例如,如果99是数组中的整数,它应该向控制台写入错误消息,这与999和01相同 到目前为止,我尝试的是使用for-each循环,但是if..else条件检查的是索引号,而不是与数组中每个索引关联的整数 有人知道我如何循环与每个索引关联的整数值吗(如下面的屏幕截图所示) 这是我到目前为止尝试过的,但是循环似乎在检查索引值,而不是与索引关联的整数值,从而给出错误的结果: private static byte[] req
99
是数组中的整数,它应该向控制台写入错误消息,这与999
和01
相同
到目前为止,我尝试的是使用for-each循环,但是if..else条件检查的是索引号,而不是与数组中每个索引关联的整数
有人知道我如何循环与每个索引关联的整数值吗(如下面的屏幕截图所示)
这是我到目前为止尝试过的,但是循环似乎在检查索引值,而不是与索引关联的整数值,从而给出错误的结果:
private static byte[] requestBytes;
foreach(char i in requestBytes)
{
if (i == 99)
{
Console.WriteLine("Sending Failure..");
}
else if(i == 999)
{
Console.WriteLine("Message Failure..");
}
else if (i == 01)
{
Console.WriteLine("Sending Success..");
}
}
如图所示,每个索引都有一个关联的整数值,我想在循环中检查这个整数值
您可以尝试使用for循环
for(int i = 0; i < requestBytes.Length; i++)
{
var v = requestBytes[i];
if (v == 99)
{
Console.WriteLine("Sending Failure..");
}
else if(v == 999)
{
Console.WriteLine("Message Failure..");
}
else if (v == 01)
{
Console.WriteLine("Sending Success..");
}
}
for(int i=0;i
为什么循环变量的类型是char
而不是byte
?arr[i]
与常规for
循环999怎么可能是字节数组元素中的值?好的,我将尝试该解决方案,上面有一个小错误..应该是for,而不是foreach。是的,对不起,我犯了错误,我困了。