如何遍历字节数组中每个索引处的数字?

时间:2015-10-27 23:51:33

标签: c# arrays foreach

我正在编写一个程序来将xml解析为字节数组,并且需要检查字节数组中某些索引的数值。

例如,如果99是数组中的整数,它应该向控制台写入错误消息,99901也是如此。

我到目前为止尝试的是每个循环使用a,但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..");
    }

}

如图所示,每个索引都有一个关联的整数值,我想在循环中检查。

Byte array contents

1 个答案:

答案 0 :(得分:2)

您可以尝试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..");
                    }

                }