我想問你的幫助,我的小學校項目。 的任務是確定一個人的性別(使用2個單選按鈕),然後選擇一個隨機的日本姓和男/女中間名。還有剩下的任務,但沒有什麼比這部分:( 事情是,我設法使3個.txt文件(familynames.txt,malemiddlenames.txt和femalemiddlenames.txt)看起來像下面: 1,Akiro 2,Sakura 3等...從txt文件中讀取隨機行,然後在QT SDK中修改它
我想要做的是創建一個隨機數,並讀取行,直到它到達與我的隨機數相同的數字的行,然後切成數和逗號關閉,並顯示相應的標籤上的名字到目前爲止,這是我已經有了:
void MainWindow::famname()
{
QString familyname;
int famrand =qrand() % 76;
ui->label_2->setText(QString::number(famrand));
int i = 1;
QFile famfile("C:\Users\Ryseth\gyakorlas\_familynames.txt");
QTextStream in(&famfile);
if(famfile.open(QIODevice::ReadOnly)){
while (!in.atEnd()) {
QString line = in.readLine();
i++;
if(i==famrand){
QStringList line2 =line.split(',');
familyname = line2.at(0);
ui->label_2->setText(QString::number(famrand)+" "+QString::number(i));
ui->FamilyLabel->setText(familyname);
}//IF
}//WHILE
}//IF
famfile.close();
}//NGEN
如果任何你能想到一些長遠發展策略研究溶液T或如果您有任何建議,請不要hasitate與我分享:d
謝謝大家,有一個很好的晝/夜:魯本
「如何將行讀入數組」然後從數組中隨機選取一個元素。讀取文件中的「隨機」行仍涉及通過文件掃描換行符,直到找到想要的行。 –
它也跨越了我的想法,但後來我採取了更難的方式:D – Ryseth
您是否會在應用程序生命週期中生成多個名稱?如果是,那麼讀取所有行(只有一次)將是更好的方法。 – 2013-07-20 15:17:26