如何设置字节数组中的每个位

KSM*_*KSM 2 c# bytearray

如何将下一个具有21个字节或168位的字节数组中的每个位设置为零或一个?

byte[] logonHours
Run Code Online (Sandbox Code Playgroud)

非常感谢你

Jon*_*eet 7

好吧,要清除每一个零,你可以使用Array.Clear:

Array.Clear(logonHours, 0, logonHours.Length);
Run Code Online (Sandbox Code Playgroud)

设置每个位稍微困难一些:

for (int i = 0; i < logonHours.Length; i++)
{
    logonHours[i] = 0xff;
}
Run Code Online (Sandbox Code Playgroud)

如果您经常发现自己填充数组,可以编写扩展方法:

public static void FillArray<T>(this T[] array, T value)
{
    // TODO: Validation
    for (int i = 0; i < array.Length; i++)
    {
        array[i] = value;
    }
}
Run Code Online (Sandbox Code Playgroud)