各位大神,我用QT写了个应用程序,对一个文件中写四个字节的数据,写完立马断电,然后重启系统,结果没把上次写进去的数据正常读出,也就是说上次写到文件中的数据没有保存。但是写完数据等待几秒断电就能正确读出数据,以下是我的程序
void MainWindow::keyPressEvent(QKeyEvent *k)
{
if(k->key()==Qt::Key_Return)
{
qDebug()<<"123";
QString s1;
s1=ui->lineEdit->text();
qDebug()<<s1;
int i;
i=s1.toInt();
qDebug()<<i;
QFile file("xxx");
file.open(QIODevice::WriteOnly);
QDataStream out(&file);
out <<s1.toInt();
file.close();
}
if(k->key()==Qt::Key_F1)
{
int ss;
QFile file1("xxx");
if(file1.open(QIODevice::ReadOnly))
{
QDataStream in(&file1);
in >>ss;
qDebug()<<ss;
file1.close();
}
}
}
按ENTER键写数据,按F1键读数据,程序要怎样写才能实现数据写完立马断电可以保存数据,这个和文件系统或者内核有关系吗,如果有关系要怎么修改? |