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

    [C++] Problema di scrittura su file

    Ciao
    Avrei un problema con il mio codice.
    Il mio probleva si trova all'inizio della mia funzione void nuovoprofilo().
    In input immetto un nome e cognome e vorrei che il mio programma mi crei:
    una cartella che si chiami come il nome e cognome appena digitati e vorrei inoltre, che il nome e cognome appena digitati vengano scritti all interno del file DATABASE.txt
    La cartella viene normalmente creata. Invece su file non viene scritto niente. Come mai?!
    Ecco il mio codice

    codice:
    #include <iostream>
    #include <stdlib.h>     //Necessaria per utilizzare system
    #include <fstream>      // Necessaria per utilizzare apertura e scrittura dei file 
    #include <windows.h>   // Necessario per createprocess() e createpipe()
    #include <cstring>
    #include <direct.h>
    #define BUFSIZE 4096
    #define MAX 50
    #define lung 100
    HANDLE g_hChildStd_IN_Rd = NULL;
    HANDLE g_hChildStd_IN_Wr = NULL;
    HANDLE g_hChildStd_OUT_Rd = NULL;
    HANDLE g_hChildStd_OUT_Wr = NULL;
    void nuovoprofilo(); 
    void CreateChildProcess(void); 
    void WriteToPipe(void); 
    void ReadFromPipe(void); 
    int AggiustaCaratteri(char buf[], int length);
    char nome_cognome[MAX], nome_file[lung][lung],a;
    int i=0;
    using namespace std;
    int main(int argc, TCHAR *argv[])
    {
    char nome_cognome[MAX], nome_file[lung][lung], a;
    int i=0;
    cout << "Immetti nome e cognome" << endl;
    cin.getline(nome_cognome,MAX);
    ifstream fin ("C:\\cygwin\\home\\DATABASE.txt");
    while(fin.good())
                    {
                    fin.getline(nome_file[i],lung);
                    i++;
                    }
    for (int i=0; i<strlen(nome_file[i]);i++)
        {                
        if(strcmp(nome_file[i],nome_cognome)==0)
                                             {
                                             cout << "Utente già registrato";
                                             system("PAUSE");
                                             return -1;
                                             }
        }
    cout << "Procedere con l'installazione oppure uscire? s / n "<<endl;
    cin >> a;
    while(a!='n')
                 {
                 switch (a)
                        {
                        case 's':
                                 chdir("C:\\cygwin\\home\\Profiles");
                                 CreateDirectory(nome_cognome,NULL);
                                 chdir(nome_cognome);
                                 CreateDirectory("wav",NULL);
                                 chdir("C:\\cygwin\\home");  
                                 nuovoprofilo();
                                 return -1;
                                 break;
                        default: cout << "Procedere con l'installazione oppure uscire? s / n";
                                 cin>>a;
                        }  
                 }
    
            
        
    system ("PAUSE");
    return 0;
    }
    
    void nuovoprofilo()
    {
    TCHAR *argv[MAX];
    ofstream fout("C:\\cygwin\\home\\DATABASE.txt", ios::app);
    fout << endl << nome_cognome;
    for (int i=0; i<strlen(nome_cognome); i++)
       {
       fout << nome_cognome[i];
       }
    ofstream fout("C:\\cygwin\\home\\DATABASE.txt", ios::app);
    fout << endl;
    for (int i=0; i<strlen(nome_cognome); i++)        //Vorrei che sul mio file DATABASE.txt
        {                                                           //venisse scritto il contenuto dell
        fout << nome_cognome[i];                         // array nome_cognome  
        }
                     //cartelle con nome profilo
    }

  2. #2
    hai dichiarato due variabili nome_cognome, una globale e una nel main.

  3. #3
    Che stupido!!
    è vero!!
    Non me ne ero minimamente accorto
    Adesso funziona.
    Ti ringrazio
    Un saluto

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 © 2024 vBulletin Solutions, Inc. All rights reserved.