QT檔案操作的理解
阿新 • • 發佈:2018-11-04
1.QFileDialog::getOpenFileName()僅僅是返回一個檔案的路徑的QString,並未真正開啟檔案;
QString fileName = QFileDialog::getOpenFileName(this, tr("Open File"),
"/home",
tr("Images (*.png *.xpm *.jpg)"));
2.QFile建立物件是用QFileDialog::getOpenFileName()返回的QString作為引數;QFile::open()開啟檔案(真正開啟檔案);
QFile file(fileName);
if (!file.open(QIODevice::ReadOnly | QIODevice::Text))
return;
3.利用QTextStream (文字方式)或QDataStream(二進位制)以位元組流的形式讀取或寫入檔案
QTextStream in(&file);
QTextCodec *uft8=QTextCodec::codecForName("UTF-8");
. in.setCodec(utf8);//設定編碼
while (!in.atEnd()) {
QString line = in.readLine();
process_line(line);
}