[ Foro de C# ]
Hola, tengo una duda sobre como cambiar un offset a un archivo binario, el codigo que tengo es el siguiente:
Archivo = txtArchivo.Text;
byte[] offsets = File.ReadAllBytes(Archivo);
offsets[int.Parse(txtOffset.Text)] = 0x00;
File.WriteAllBytes(Archivo, offsets);
Me gustaria saber si hay alguna forma de enviar el valor "0x00" desde un textbox?
Osea que el usuario ponga por ejemplo "0xAA" en el textbox1...
Probé algo como:
offsets[int.Parse(txtOffset.Text)] = Convert.Tobyte(textBox1.Text);
pero me dice que la cadena de entrada no tiene el formato correcto...
Por una parte, no tengo claro lo que pretendes... cambiar el valor de un único byte de todo un fichero usando para ello un array? No sería más simple saltar a la posición del ficheroy cambiar ese byte directamente en el fichero?
Por otra parte, para convertir de cadena a entero puedes Convert.ToInt32, que entre sus muchas sobrecargas tiene una que te permite indicar en qué base está el número. Mira:
http://msdn.microsoft.com/en-us/library/1k20k614.aspx
(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)