Cet exemple lit 6 octets dans un tableau d'octets et l'écrit dans un autre tableau d'octets. Il effectue une opération XOR avec les octets afin que le résultat écrit dans le fichier soit le même que les valeurs de départ d'origine. Le fichier a toujours une taille de 6 octets, car il écrit à la position 0.
using System;
using System.IO;
namespace ConsoleApplication1
{
class Program
{
static void Main()
{
byte[] b1 = { 1, 2, 4, 8, 16, 32 };
byte[] b2 = new byte[6];
byte[] b3 = new byte[6];
byte[] b4 = new byte[6];
FileStream f1;
f1 = new FileStream("test.txt", FileMode.Create, FileAccess.Write);
f1.Write(b1, 0, 6);
f1.Close();
f1 = new FileStream("test.txt", FileMode.Open, FileAccess.Read);
f1.Read(b2, 0, 6);
f1.Close();
for (int i = 1; i < b2.Length; i++)
{
b2[i] = (byte)(b2[i] ^ (byte)10);
}
f1 = new FileStream("test.txt", FileMode.Open, FileAccess.Write);
f1.Write(b2, 0, 6);
f1.Close();
f1 = new FileStream("test.txt", FileMode.Open, FileAccess.Read);
f1.Read(b3, 0, 6);
f1.Close();
for (int i = 1; i < b3.Length; i++)
{
b4[i] = (byte)(b3[i] ^ (byte)10);
}
f1 = new FileStream("test.txt", FileMode.Open, FileAccess.Write);
f1.Write(b4, 0, 6);
f1.Close();
}
}
}