J'ai obtenu le code suivant :
byte[] myBytes = new byte[10 * 10000];
for (long i = 0; i < 10000; i++)
{
byte[] a1 = BitConverter.GetBytes(i);
byte[] a2 = BitConverter.GetBytes(true);
byte[] a3 = BitConverter.GetBytes(false);
byte[] rv = new byte[10];
System.Buffer.BlockCopy(a1, 0, rv, 0, a1.Length);
System.Buffer.BlockCopy(a2, 0, rv, a1.Length, a2.Length);
System.Buffer.BlockCopy(a3, 0, rv, a1.Length + a2.Length, a3.Length);
}
tout fonctionne comme il se doit. j'essayais de convertir ce code pour que tout soit écrit en myBytes
mais ensuite j'ai réalisé que j'utilise un long et que si sa valeur est plus élevée alors int.MaxValue
le casting échouera. comment résoudre ce problème ?
Une autre question serait, puisque je ne veux pas créer un très grand tableau d'octets en mémoire, comment pourrais-je l'envoyer directement à mon système de gestion de l'environnement ? .WriteBytes(path, myBytes);
fonction ?