Je suis débutant en C++ et j'utilise le Qt 4.7.4. Pour mes cours, je dois réaliser un projet qui me demande de créer une application pour Windows.
Mais là, je bloque, je dois récupérer du texte que l'utilisateur écrit dans un QLineEdit et l'enregistrer dans un fichier .txt. J'ai fait de longues recherches mais je ne suis pas parvenu à trouver comment faire.
Voici mon code :
#include <QLineEdit>
#include <QLabel>
#include <fstream>
#include <QTime>
#include <QString>
#include <QTextStream>
#include <QFile>
#include <QDir>
void delay();
int main(int argc, char** argv)
{
QApplication app(argc, argv);
QWidget* w = new QWidget;
w->resize(600,400);
w->setMaximumSize(600,400);
QLabel* text1 = new QLabel("Prénom\n(Exemple : Jean)");
QLineEdit* clientFirstName = new QLineEdit();
clientFirstName->setMaximumSize(100,50);
QLabel* text2 = new QLabel("Nom\n(Exemple : Dupont)");
QLineEdit* clientLastName = new QLineEdit();
clientLastName->setMaximumSize(100,50);
QLabel* text3 = new QLabel("Mail\n(Exemple : jeandupont@gmail.com)");
QLineEdit* clientMail = new QLineEdit();
clientMail->setMaximumSize(100,50);
QLabel* text4 = new QLabel("N° de téléphone\n(Exemple : xx xx xx xx xx)");
QLineEdit* clientTelNumber = new QLineEdit();
clientTelNumber->setMaximumSize(100,50);
QPushButton* saveButton = new QPushButton("Enregistrer");
w->setWindowTitle("Enregistrer un nouveau client");
QGridLayout *lay = new QGridLayout;
lay->addWidget(text1,0,0);
lay->addWidget(clientFirstName,1,0);
lay->addWidget(text2,2,0);
lay->addWidget(clientLastName,3,0);
lay->addWidget(text3,4,0);
lay->addWidget(clientMail,5,0);
lay->addWidget(text4,6,0);
lay->addWidget(clientTelNumber,7,0);
lay->addWidget(saveButton,8,0);
w->setLayout(lay);
QFile enregistrer("clientInfo.txt");
enregistrer.open(QIODevice::WriteOnly | QIODevice::Text);
QTextStream in(&enregistrer);
while(!in.atEnd())
w->show();
//delay();
enregistrer(clientFirstName*, clientLastName*, clientMail*, clientTelNumber*);
return app.exec();
}
void enregistrer(QLineEdit &firstName, QLineEdit &lastName, QLineEdit &mail, QLineEdit &number) {
std::ofstream clientInfo ("clientInfo.txt", std::ios::app);
clientInfo << "Nom: " << firstName << "\n";
clientInfo << "Prénom: " << lastName << "\n";
clientInfo << "Mail: " << mail << "\n";
clientInfo << "Numéro: " << number << "\n";
clientInfo.write(firstName.text());
}