txt - ¿Cómo borro todo el contenido de un archivo en C?
guardar y leer datos en un archivo.txt en c++ (4)
Tengo un archivo con algunos de los datos del usuario1. Quiero usar el mismo archivo para user2 borrando el contenido del archivo.
Mi idea es que cuando llegue un nuevo usuario, los datos del usuario anterior deberían ser claros y el mismo archivo debería estar listo para el nuevo usuario.
con fopen(filename, flag)
simplemente ábralo con flag = "w"
o "wb"
y se borrará
Como @stefan dijo que usar fopen()
con el modo "w" hará el trabajo por usted. Cuando abre un archivo con la marca "w", crea un archivo vacío para escribir. Si ya existe un archivo con el mismo nombre, su contenido se borra y el archivo se trata como un archivo nuevo vacío.
Si el archivo ya está abierto, puede usar la función freopen()
desde stdio.h con el modo "w", ya que primero cerrará el archivo y luego lo volverá a abrir para escribir lo que estaba en el archivo anteriormente.
Hay dos maneras:
1. fd=open(filename,O_RDONLY | O_WRONLY | O_TRUNC);
2. [cat /dev/null > filename] for BASH. It can be directly used in c program using [system()] system call.
system("cat /dev/null > filename");
fclose(fopen("file.txt", "w"));
Por qué esto funciona:
escribir: crea un archivo vacío para las operaciones de salida. Si ya existe un archivo con el mismo nombre, su contenido se descarta y el archivo se trata como un nuevo archivo vacío .