ファイルの読み取りに問題があります。具体的には、小さな辞書を作成したいということです。私が読む必要があるファイルには、次のような内容があります。
a Ph P6
a snsr CA
a b c fb Dj
a b c - book i+ BS
A except B gate oOPa y
a font kQ BU
[....]
約109.000行あり、ファイルのサイズは約2MBです。私の QT アプリでは、次のようにコーディングして項目を読み取って QListWidget に追加しました。
QString sWord;
QFile inFile("C:\\EV\\ev.index");
inFile.open(QIODevice::ReadOnly|QIODevice::Text);
QTextStream in(&inFile);
while(!in.atEnd())
{
sWord = in.readLine();
myListWidget->addItem(sWord); //myListWidget is a QListWidget
}
しかし、それは長すぎます!最初は、アプリが行ごとに読み取ることが理由だと思うので、次のように再度コーディングしました。
QString data;
QStringList listWord;
QFile inFile("C:\\EV\\ev.index");
inFile.open(QIODevice::ReadOnly|QIODevice::Text);
QTextStream in(&inFile);
data.append(in.readAll());
listWord.append(data.split('\n'));
myListWidget->addItems(listWord);
inFile.close();
(アプリ起動から約5秒) まだまだ長いので、もっと早く読みたいです。私がしなければならないこと?