Come si scrive su file?

di Gallhager il
37 risposte

37 Risposte - Pagina 2

  • Hai provato il primo programma che scrive sulla cartella temp
    
    fp=fopen("c:\\temp\\prova2.txt","w");
    printf("%d\n", errno);
    
    ?

    E la cartella C:\Temp esiste e tu ci puoi scrivere (creare file?)

    E fai sempre Build and Run?
  • OK, i primi due vanno, il terzo ancora no (anche aggiustando le parentesi all'if) sai perchè?
    Ma come mai posso salvare solo in temp? è assurdo non poter salvare in una cartella sul desktop.
    quando provo a usare c:\\User\\utente\\Desktop\\.. da' come errore:
    error: incomplete universal character name \u
    error: incomplete universal character name \U
  • Ma scusa ... prima avevi detto che su temp non funzionava ... così non si capisce nulla.

    Nell'ultimo leggi un file che forse non hai ancora scritto
  • Non avevo usato temp ma il path verso la cartella che avevo sul desktop. Non dovrei poter usare qualunque path scritto correttamente?
    Sopra ti scrivevo che da' errore sul carattere '\u' e '\U'
  • Quell'errore è tipico di quando non metti il doppio backslash. Controlla bene che anche su temp hai detto una cosa e poi era un'altra
  • Non so, il doppio slash c'è. ho proprio copiato e incollato l'indirizzo della cartella (ho anche provato a scriverlo a mano)
  • Prova /, su windows dovrebbe essere equivalente a \\.
  • Il file non viene aperto.
    le ho ho provate tutte: \\,\,/,//
  • Ma il file c'è in quella cartella?
    Puoi mostrare il codice usato con tutto il path usato?
    Possibile che solo a te non funzioni un file in lettura in tutto il mondo? Sarà una sciocchezza...
  • Se sei sicuro al 100% che il file esiste, che hai i permessi per accedere e che non ci siano errori di sintassi: cambia IDE. Fai una prova con Visual Studio o Netbeans+MinGW
  • Purtroppo mi conviene usare code::blocks perchè faccio l'università e all'esame mi ritroverò a doverlo utilizzare..
    Il file nella cartella non esiste, perchè il codice stesso dovrebbe crearlo. Ma anche crearlo in anticipo non sembra sortire alcuna differenza.
    Il path che ho utilizzato è C:\Users\utente\Desktop\PROGETTO_PF e l'errore che il compilatore comunica è
    error: incomplete universal character name \u
    error: incomplete universal character name \U
  • I casi sono due: o adoperi \\ (doppio backslash) oppure un singolo /. Il messaggio che ottieni è dovuto al fatto che adoperi un singolo \ (che il compilatore interpreta come prefisso di escape per una sequenza unicode (\U+...).
  • Ti ho sempre fatto gli esempi con il \\ ma non hai imparato... deve essere

    C:\\Users\\utente\\Desktop\\PROGETTO_PF
  • Scusate ho sbagliato a scrivere qui sul forum
    i doppi slash li ho usati: C:\\Users\\utente\\Desktop\\PROGETTO_PF e il problema è che il file non viene aperto. Se invece uso C:\\temp funziona
  • Prova a creare esattamente la cartella temp sul desktop, senza underscore o nomi lunghi più di 8 caratteri
    Poi crea un progetto da zero. Occhio anche all'ultimo slash prima del nome del file. Va bene tutto, ma non può essere che il compilatore ti segnali una sequenza di escape che non hai messo
Devi accedere o registrarti per scrivere nel forum
37 risposte