![]() |
進行實驗或是產品除錯,常常會將一些數據存成檔案,將數據從檔案中取出有許多方法,這篇記錄一下透過 Qt 將數據從檔案內取出的方法。 |
---|
檔案格式
假設有一筆簡易的實驗數據,存成 .txt 檔案,並且存成底下的格式:
10, 100, 255
123, 45, 333
255, 255, 255
0, 0, 0
255, 255, 255
0, 0, 0
255, 255, 255
0, 0, 0
範例程式
透過 C++ 輔以 Qt 的介面範例程式如下:
- #include <QFileDialog>
- void parseData()
- {
- QString fileName = QFileDialog::getOpenFileName(this->pUI.get(), tr("Open Pattern File"), "pattern", tr("Text Files (*.txt)"));
- QFile file(fileName);
- if (file.open(QIODevice::ReadOnly))
- {
- QTextStream data(&file);
- while (!data.atEnd())
- {
- QString line = data.readLine();
- // Seperate string to several parts by synbol ',', ';', and ' '
- QStringList row = line.split(QRegularExpression("[,; ]"));
- row.removeAll("");
- }
- }
- }
程式碼內的 row 即為單行所解析出來的數據,並且資料格式為 QString,透過轉換函示即可簡易轉成整數或是浮點數。
參考資料
No comments:
Post a Comment