|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: Nov 2010
Messaggi: 30
|
[C++] Come attaccare più stringhe sullo stesso file
Ciao a tutti
Vorrei realizzare un programma di questo tipo. All'inizio immetto il mio nome, cognome e la mia data di nascita. Questi vengono salvati in un file.txt La volta dopo, vorrei che: se io digito il mio nome cognome e data di nascita, il mio programma mi dica: utente già registrato. Altrimenti se digito ad esempio Immettere nome e cognome pippo Immettere data di nascita 25071975 vorrei che il programma andasse ad attaccare in coda il mio file anche i dati pippo 25071975. Mi sono spiegato?! Ecco il mio codice. un saluto a tutti Codice:
#include<iostream>
#include<ctype.h> //necessaria per l'utilizzo di tolower()
#include <fstream>
#include<cstring>
#include<stdlib.h>
#define MAX 20
#define data 8
#define lung 100
using namespace std;
int main()
{
char nome_cognome[MAX];
int data_nascita,i=0;
char file_nome[lung];
int file_data;
cout << "Immetti nome e cognome" << endl;
cin.getline(nome_cognome,MAX);
cout << "Immetti data di nascita" << endl;
cin>>data_nascita;
ofstream fout("DATABASE.txt");
ifstream fin ("DATABASE.txt");
while(fin.good())
{
fin>>file_nome;
fin>>file_data;
if(strcmp(nome_cognome,file_nome)==0)
{
cout << "Utente già registrato" << endl;
}
else
{
ofstream fout("DATABASE.txt", ios::app);
for (int i=0; i<strlen(nome_cognome); i++)
{
fout << nome_cognome[i];
}
fout << '\t';
for (int i=0; i<1; i++)
{
fout << data_nascita;
}
fout << endl;
}
}
fout.close();
system ("PAUSE");
return 0;
}
|
|
|
|
|
|
#2 | |
|
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
Quote:
Prima dovresti eseguire una ricerca esaustiva su tutti i record precedentemente inseriti e poi se non lo trovi lo inserisci. Inoltre non vedo perchè dichiarare 2 volte fout, la prima dichiarazione non serve ed è solo nociva potrebbe bloccare il file. |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 13:37.




















