PDA

View Full Version : [C] Problema in apertura file


lalli83
28-05-2003, 22:51
fopen("file.txt","r+w")

Premettendo che ho tutti i permessi sul file...come faccio ad aprire il file in scrittura e lettura...è giusto scrivere "r+w"???
:-)))

Louder Than Hell
28-05-2003, 23:07
A memoria ricordo:

FILE *ilfile;
fopen(ilfile,"nomefile.txt","rw");

però se non ricordo male con w se il file non esiste lo crea se no cancella tutti i dati al suo interno! puoi usare a per l'append mode(scrive alla fine del file!).

Non so non vorrei aver detto qualche c@<>@t@ colossale prova un pò...

edit: ah poi dovresti chiuderlo con fclose ma non ricordo come si fa....... :rolleyes:

lalli83
28-05-2003, 23:14
io faccio cosi:
FILE *fp;
fp=fopen("file.txt","r+w");
...
fclose();

faccio controllo su fp x eventuali errori su file....se è solo r nn da errore e legge il file senza problemi...ma cn "rw" o "r+w" o "r+a" nn apre il file... :(

mjordan
29-05-2003, 11:52
Originally posted by "lalli83"

fopen("file.txt","r+w")

Premettendo che ho tutti i permessi sul file...come faccio ad aprire il file in scrittura e lettura...è giusto scrivere "r+w"???
:-)))

Ci sono vari modi per aprire un file in lettura e scrittura. Quello a cui devi stare attento e al comportamento che ottieni in fase di lettura.

Ad esempio, utilizzare il flag "r+" apre il file in modo testo sia in lettura che in scrittura e riporta l'indice del file all'inizio. Basta specificare oppure w+.
Come fai tu è ridondante.

mjordan
29-05-2003, 11:53
Originally posted by "mjordan"



Ci sono vari modi per aprire un file in lettura e scrittura. Quello a cui devi stare attento e al comportamento che ottieni in fase di lettura.

Ad esempio, utilizzare il flag "r+" apre il file in modo testo sia in lettura che in scrittura e riporta l'indice del file all'inizio. Basta specificare oppure w+.
Come fai tu è ridondante.

Ah il prototipo che usi è corretto.

lalli83
29-05-2003, 15:13
Grazie mille ho capito :D quindi "r" lettura "w" scrittura "r+" lettura e scrittura

La cosa brutta che "r+w" non me losono inventata..ma l ha detto il prof del poli!!! :( E' messo veramente male il mio prof....ne sa proprio poche!!! :muro:

matpez
29-05-2003, 15:40
Digli cosa ti ha detto cosi facciamo ridere tutta la sezione :D

lalli83
29-05-2003, 15:56
ihihihihi...va beh....se proprio insisti :D

"L'idolo" (...è ironico...) del mio profdi Tecniche di Programmazione I ed Elementi di Informatica alla prima lezione mentre spiegava ai poveri ignari che cosè C e la programmazione in genere ha fatto il seguente esempio:
"Un giorno un mio alunno durante la lezione mi ha chiesto....'Ma come ha fatto questo programma?'" e la risposta del prof è stata "Non lo so...l ho fatto e basta!!...." -_- ..."Non so come l ho fatto...."

Secondo me la frase che ha detto è solo tanto idiota...ma a matpez fa tanto ridere!! :-)))))

mjordan
29-05-2003, 16:02
r - Apre il file in lettura in modalità testo. Lo stream è posizionato a inizio file.
r+ - Apre il file in modo testo in lettura e scrittura. Lo stream è posizionato a inizio file.
w - Tronca il file o ne crea uno nuovo per la scritura in modo testo. Anche quì lo stream sta a inizio file.
w+ - Crea un file per la lettura o scrittura. Se esiste viene troncato, altrimenti viene creato.

Non è che w+r è sbagliato, è solo ridondante e probabilmente ve lo ha detto solo per semplificarvi il ricordare di questi flag.