Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    [C++]manipolazione file

    Salve,
    sto cercando di modificare un file di testo cancellando una riga ed inserendone altre ma non ne vengo fuori.
    Non ho molta esperienza con il C++.
    L'idea era questa:
    codice:
    if(exist("prova.xml")){
     *apre il file "prova.xml"*
     *cancella l'ultima riga*
     *concatena al file itube.xml un testo*
    *chiude il file*
    }
    else{
    *crea il file normalmente*
    //già fatto
    }
    E' fattibile?
    Grazie 10^3

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Se usi un file di testo, devi aprire l'originale in lettura e un altro file in scrittura.

    A questo punto leggi dal primo e scrivi nel secondo le righe che ti interessano.

    Poi chiudi tutti i file, elimini l'originale e rinomini il nuovo file.
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Ok, fino a qui c'ero.
    Ma come faccio a cancellare l'ultima riga?

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    No ... non ci sei ...

    Non devi "cancellare" le righe ... non le devi riscrivere nel secondo file ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Ok, ma come faccio a dire quali righe mi interessano?
    Lo pseudocodice lo so, il problema è che non trovo come si fa con ifstream e ofstream.
    Come faccio a fermarmi prima dell'ultima riga?

  6. #6
    codice:
    		ifstream in("itubes.xml");
    		//se esiste già
    		if(?come vedo se esiste?){
    			ofstream out("finale.xml");
    			string s;
    			while(getline(in, s)||?come vedo che sono arrivato all'ultima riga?) 
    				out << s << "\n"; 
    			out<<"TESTO DA AGGIUNGERE"<<std::endl;
    			out.close();
    		}

  7. #7

  8. #8
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Leggi sempre due righe e scrivi solamente la precedente.
    No MP tecnici (non rispondo nemmeno!), usa il forum.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.