Python - Error al intentar reemplazar unos bytes por otros, en un fichero binario.

 
Vista:
Imágen de perfil de Francisco Javier
Val: 7
Ha disminuido su posición en 5 puestos en Python (en relación al último mes)
Gráfica de Python

Error al intentar reemplazar unos bytes por otros, en un fichero binario.

Publicado por Francisco Javier (4 intervenciones) el 11/11/2018 21:43:48
Hola, ¿alguien con experiencia en manipulación de ficheros?
1º Bloque de código, crea un fichero de texto.
2º Bloque de código, reemplaza las primeras letras del fichero dejando intacto el resto. (TODO CORRECTO)
El input está solo para hacer una pausa.
3º Bloque de código, intenta "reemplazar" igualmente los primeros tres bytes del fichero pero, no lo hace bién. Me graba esos tres bytes pero borrándome el resto del fichero empequeñeciéndolo a esos tres bytes.
¿Hay alguna forma más correcta de reemplazar bytes binarios de un fichero dejando intacto el resto?

#Escribir y crear si no existe con .write()
archivo_texto = open("archivo.txt", "w") # Nombre de archivo y modo de acceso
frase = "Estupendo día para estudiar Pyhon\n el miércoles"
archivo_texto.write(frase) # Lo graba
archivo_texto.close()

#Con esto escribimos reemplazando el texto en la posición determinada por ".seek()"
archivo_texto=open("archivo.txt", "r+")
archivo_texto.seek(0) # Esto lo que hace es posicionar el puntero donde queramos, al ser (0) nos imprime el texto desde el principio
frase="Reemplazamos"
archivo_texto.write(frase)
archivo_texto.close()

a = input("PULSA ENTER PARA CONTINUAR")

archivo_texto=open("archivo.txt", "wb") # En modo binario
archivo_texto.seek(0) # Esto lo que hace es posicionar el puntero donde queramos, al ser (0) nos imprime el texto desde el principio
frase=(b"\x01\x02\x03")
archivo_texto.write(frase)
archivo_texto.close()
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 1.922
Oro
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Error al intentar reemplazar unos bytes por otros, en un fichero binario.

Publicado por tincopasan (561 intervenciones) el 12/11/2018 00:14:49
ésta línea:
1
archivo_texto=open("archivo.txt", "wb") # En modo binario
"wb" borra todo el contenido
reemplazalo por:
"r+b"
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
3
Comentar
Imágen de perfil de Francisco Javier
Val: 7
Ha disminuido su posición en 5 puestos en Python (en relación al último mes)
Gráfica de Python

Error al intentar reemplazar unos bytes por otros, en un fichero binario.

Publicado por Francisco Javier (4 intervenciones) el 12/11/2018 02:10:21
Problema solucionado. gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar