Bonjour,
j'ai de problème en affichage
mon travail est de lecture un fichier txt ligne par ligne et d'afficher le contenu de fichier dans un tableau ligne par ligne dans premier colonne et nbr de caractère dans la deuxièmes colonne
le problem ce que en affichage je reçus tout le texte de fichier en meme ligne de tableau mais je doit affichier en tableau ligne par ligne avec nbr de caracteres .
aider moi svp c'est mon code :



Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QtGui>
#include <QFileDialog>
#include <iostream>
#include <QString>
#include <qlistview>
 
using namespace std;
QString code;
QString cap;
int info;
 
MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
 
}
 
MainWindow::~MainWindow()
{
    delete ui;
}
 
void MainWindow::on_pushButton_clicked()
{
 
    QString filename = QFileDialog::getOpenFileName(
                this,
                tr("Open file"),
                QDir::currentPath(),
                tr("Document File(*.doc *txt)") );
    if(!filename.isNull()){
        qDebug (filename.toAscii());
    }
   ui->lineEdit->setText(filename);
 
 
   QFile file(filename);
        if (!file.open(QIODevice::ReadOnly | QIODevice::Text))
            return;
 int nbLignes = 0 ;
 
        QTextStream in(&file);
        while (!in.atEnd()) {
            QString line = in.readLine() + "\n" ;
 
            code += line;
 
 
              nbLignes++ ;
              file.close();
 
            string::size_type cap;
               cap = line.capacity();
 
 
               model = new QStandardItemModel(nbLignes,2,this);
                              ui->tableView->setModel(model);
 
 
                              for(int row=0 ; row< nbLignes ; ++row)
 
                              {
 
                                int  col=0 ;
 
                                      QModelIndex index = model->index(row,col,QModelIndex());
 
                                      model->setData(index,code);
 
                                  col=1;
 
                            QModelIndex ind = model->index(row,col,QModelIndex());
                            model->setData(ind,line.size()-1);
 
               }
 
 
 
 
       ui->label->setNum(nbLignes);
 
 
 
 
 cout  <<"  : " << line.size()-1 << endl;
 
        }
 
 
}