В этом примере 6 байтов считываются в байтовый массив и записываются в другой байтовый массив. Он выполняет операцию XOR с байтами, чтобы результат, записанный в файл, был таким же, как исходные начальные значения. Размер файла всегда 6 байт, поскольку он записывается в позиции 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();
}
}
}