Ver Mensaje Individual
  #4 (permalink)  
Antiguo 25/06/2010, 10:57
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problemilla, seguramente de ignorancia.

Solo "+" no es válido. Probá "w+" o "a+". No recuerdo ahora mismo si "r+" vale.

¡Ojo con abrir para lectura y escritura! A menos que vayas dejando el puntero interno del archivo en el lugar indicado, y sepas exactamente qué vas a escribir (y cuánto) puede ser un dolor de cabeza.

Quizás ya lo tengas pensado, pero imaginá esto ("*" es el puntero interno del archivo, el lugar desde el que se lee / escribe):

archivo.txt:

*una
linea
o
dos

lo abro para lectura, leo una línea, el archivo me queda

una
*linea
o
dos

ahora escribo en el archivo una cadena conteniendo
"nueva
cadena"

El resultado es:

una
nueva
cadena*
dos


Cuidado con eso. El puntero interno se puede mover a cualquier parte del archivo usando métodos del lenguaje, pero no hay forma de decir "agrega una cadena en tal posición y desplazando el resto del contenido".


Saludos.