我想包含一個文件句柄和流作爲我的類的私有成員。Qt寫入QTextStream指針
class Window : public QMainWindow, private Ui::Window
{
Q_OBJECT
public:
.
.
.
private:
QFile * outputFile;
QTextStream * outputFileStream;
};
我再要初始化的手柄和流在構造函數中:
Window::Window(QWidget *parent)
: QMainWindow(parent)
{
setupUi(this);
outputFile = new QFile("/path/to/file.log");
outputFile->open(QIODevice::WriteOnly | QIODevice::Text);
outputFileStream = new QTextStream(outputFile);
*outputFileStream << "=======List=======\n\n";
}
這將創建該文件,但沒有寫它。然而,當我使用了一個QFile的指針,而不是QTextStream,它的工作原理:
Window::Window(QWidget *parent)
: QMainWindow(parent)
{
setupUi(this);
outputFile = new QFile("/path/to/file.log");
outputFile->open(QIODevice::WriteOnly | QIODevice::Text);
QTextStream outputFileStream(&outputFile);
outputFileStream << "=======List=======\n\n";
}
這是因爲我不能在類的主要功能寫入該流後是不是非常有用。這兩個看起來相當於我,但顯然不是。
我沒有設置這個實現。如果有人提出了一個更好的方法(即使用靜態或其他方法),這也是一個很好的建議。
這是行不通的? (* outputFileStream)<<「=======列表======= \ n \ n」; – TheDarkKnight
我試過了。沒有骰子。 – MrUser