Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionstatic void Main () { byte[] Fichier = new byte[] { 55, 255, 0, 1, 165 }; byte[] OSequence = new byte[] { 165 }; byte[] RSequence = new byte[] { 187 }; Replace (Fichier, OSequence, RSequence); foreach (byte AByte in Fichier) Console.WriteLine (AByte); Console.ReadLine (); } static void Replace (byte[] ByteArray, byte[] OriginalSequence, byte[] ReplacementSequence) { if (OriginalSequence.Length > ByteArray.Length) throw new ArgumentException (); if (OriginalSequence.Length != ReplacementSequence.Length) throw new ArgumentException (); for (int i = 0; i < ByteArray.Length - OriginalSequence.Length + 1; i++) { for (int j = 0; j < OriginalSequence.Length; j++) { if (ByteArray[i + j] != OriginalSequence[j]) break; if (j == OriginalSequence.Length - 1) { for (int k = 0; k < OriginalSequence.Length; k++) { ByteArray[i] = ReplacementSequence[k]; i++; } break; } } } }
for (int k = 0; k < OriginalSequence.Length; k++) { ByteArray[i] = ReplacementSequence[k]; i++; } i--; break;
private void button1_Click(object sender, EventArgs e) { OFD1.FileName = ""; OFD1.Title = "Fichier à modifier"; OFD1.ShowDialog(); if (OFD1.FileName != "") { GlobalVariables.FilePath = OFD1.FileName; button2.Enabled = true; } } private void button2_Click(object sender, EventArgs e) { byte[] Fichier = Encoding.Default.GetBytes(OFD1.FileName); byte[] OSequence = new byte[] { 17 }; byte[] RSequence = new byte[] { 14 }; replace(Fichier, OSequence, RSequence); foreach (byte AByte in Fichier) Console.WriteLine(AByte); Console.ReadLine(); static void replace(byte[] ByteArray, byte[] OriginalSequence, byte[] replacementSequence) { if (OriginalSequence.Length > ByteArray.Length) throw new ArgumentException(); if (OriginalSequence.Length != replacementSequence.Length) throw new ArgumentException(); for (int i = 0; i < ByteArray.Length - OriginalSequence.Length + 1; i++) { for (int j = 0; j < OriginalSequence.Length; j++) { if (ByteArray[i + j] != OriginalSequence[j]) break; if (j == OriginalSequence.Length - 1) { for (int k = 0; k < OriginalSequence.Length; k++) { ByteArray[i] = replacementSequence[k]; i++; } i--; break; } } } }
Encoding.Default.GetBytes(OFD1.FileName)
FileStream StreamFichier = new FileStream(OFD1.FileName, FileMode.Open, FileAccess.Read); byte[] Fichier = new byte[StreamFichier.Length]; StreamFichier.Read(Fichier, 0, System.Convert.ToInt32(StreamFichier.Length));