Reading null values in a byte array c#
<p>I am trying to loop through a byte array (sample below) reading the values to then insert those into a database</p>

<p>I loop through keeping track of the position </p>

<pre><code>byte[] data;
position = Conversion.Extract(data, out mydata, position);
position = Conversion.Extract(data, out nextitem, position);
</code></pre>

<p>The data I have contains some null values, how can I extract these and successfully move onto the next value. At present if I come across a null value I don't know how to detect this and move onto the next item. Can anyone help at all</p>

<p>The Extract code is:</p>

<pre><code>byte[] data;
long position=0;
while (position &lt; data.Length)
{
    position = Conversion.Extract(data, out mydata, position);
    position = Conversion.Extract(data, out nextitem, position);
}

public static long Extract(byte[] message, out int variable, long position)
{
    const int length = 4; // the length of an int

    if (message.Length &gt;= position + length)
    {
        variable = BitConverter.ToInt32(message, (int)position);
        return position + length;
    }

    variable = 0;
    return -1;
}
</code></pre>

<p>Thanks</p>

<p>Simon</p>

<pre>6F 72 67 61 6E 69 73 61 74 69 6F 6E 49 64 3D 33
26 10 00 00 00 50 65 6F 70 6C 65 50 65 6F 70 6C
65 4C 69 6E 6B 6A 08 00 00 09 00 00 00 0E 00 00
00 53 65 6E 69 6F 72 50 65 72 73 6F 6E 49 64 0E
00 00 00 4A 75 6E 69 6F 72 50 65 72 73 6F 6E 49
64 11 00 00 00 53 65 6E 69 6F 72 50 65 72 73 6F
6E 4D 69 73 49 64 11 00 00 00 4A 75 6E 69 6F 72
50 65 72 73 6F 6E 4D 69 73 49 64 08 00 00 00 4C
69 6E 6B 54 79 70 65 16 00 00 00 50 61 72 65 6E
74 61 6C 52 65 73 70 6F 6E 73 69 62 69 6C 69 74
79 08 00 00 00 50 72 69 6F 72 69 74 79 0B 00 00
00 4C 61 73 74 55 70 64 61 74 65 64 07 00 00 00
44 65 6C 65 74 65 64 01 00 00 00 D7 0A 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 01 80 C3 29
C6 85 BF CE 08 00 02 00 00 00 3C 0C 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 F0 83 76 C6
85 BF CE 08 00 03 00 00 00 3C 0C 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 C0 0E 76 C6 85
BF CE 08 00 04 00 00 00 67 0B 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 01 70 CA 4B C6 85 BF
CE 08 00 05 00 00 00 67 0B 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 02 70 CA 4B C6 85 BF CE
08 00 06 00 00 00 9B 08 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 02 C0 BE B2 C5 85 BF CE 08
00 06 00 00 00 AD 09 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 02 10 6D F5 C5 85 BF CE 08 00
06 00 00 00 3F 0A 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 02 80 59 11 C6 85 BF CE 08 00 07
00 00 00 E3 0A 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 01 C0 D0 2C C6 85 BF CE 08 00 08 00
00 00 9B 08 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 01 C0 BE B2 C5 85 BF CE 08 00 08 00 00
00 AD 09 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 01 10 6D F5 C5 85 BF CE 08 00 08 00 00 00
C9 09 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 01 20 76 FA C5 85 BF CE 08 00 08 00 00 00 3F
0A 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
01 B0 CE 11 C6 85 BF CE 08 00 09 00 00 00 E3 0A
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01
90 5B 2C C6 85 BF CE 08 00 0A 00 00 00 C9 09 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 20
76 FA C5 85 BF CE 08 00 0B 00 00 00 F6 08 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 01 E0 C9
D2 C5 85 BF CE 08 00 0C 00 00 00 F6 08 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 02 F0 2C C9
C5 85 BF CE 08 00 0E 00 00 00 91 09 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 01 C0 C7 EF C5
85 BF CE 08 00 0F 00 00 00 91 09 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 02 90 52 EF C5 85</pre>

<pre>SeniorPersonId | JuniorPersonId | SeniorPersonMisId | JuniorPersonMisId | LinkType | ParentalResponsibility | Priority | LastUpdated              Deleted
1              | 2775           | {null}            | {null}            | {null}   | 0                      | 1        | 2012-02-22 14:31:18.200 | {null}
2              | 3132           | {null}            | {null}            | {null}   | 0                      | {null}   | 2012-02-22 14:31:18.703 | {null}
3              | 3132           | {null}            | {null}            | {null}   | 0                      | {null}   | 2012-02-22 14:31:18.700 | {null}
4              | 2919           | {null}            | {null}            | {null}   | 0                      | 1        | 2012-02-22 14:31:18.423 | {null}</pre>
