Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ QFile。设备未打开_C++_Qt_Qfile - Fatal编程技术网

C++ QFile。设备未打开

C++ QFile。设备未打开,c++,qt,qfile,C++,Qt,Qfile,我对QFile有问题 QFile file1("file1.dat"); QFile file2("file2.dat"); if(file2.exists()) { } if(!file1.open(QIODevice::ReadOnly)) { qDebug() << "Ошибка открытия для чтения"; } if(!file2.open(QIODevice::WriteOnly)) { qDebug() << "Ошиб

我对
QFile
有问题

QFile file1("file1.dat");
QFile file2("file2.dat");

if(file2.exists())
{

}

if(!file1.open(QIODevice::ReadOnly))
{
    qDebug() << "Ошибка открытия для чтения";
}

if(!file2.open(QIODevice::WriteOnly))
{
    qDebug() << "Ошибка открытия для записи";
}

QByteArray block = file1.readAll();
file2.write(block);
file1.close();
file2.close();

尝试以读写模式打开file1.dat:

if(!file1.open(QIODevice::ReadWrite))
{
    qDebug() << "Ошибка открытия";
}

尝试使用
fileN.isOpen()
检查这两个文件,确保它们已打开。作为第二步,我将检查它们的位置。我需要在哪里写入fileN.isOpen()?Qt已经表示文件1未打开。另外,我刚刚编写了QFile file1(“file1.dat”);我想说的是,我没有在显示的代码中创建file1.dat,如果
file1.open(…)
失败,您仍然可以继续使用
file1.readAll()
从中读取。您期望得到什么?该文件无法打开-可能不存在。是否可行?QFile文件(“/Users/Sardorkun/Destkop/File.txt”);另外,我需要在哪里创建file1.dat?如果创建了file1.dat,我可以在哪里找到file1.dat?查看QDir的QT文档,像
QDir::currentPath()
或类似的方法可能会很有用。然后只需使用
qDebug()
打印创建文件的文件夹。但首先,我将查看可执行文件所在的文件夹。(可能因操作系统而异)您能帮我解决其他问题吗?它是关于sdk平台的。我已经问过这个问题了。
if(!file1.open(QIODevice::ReadWrite))
{
    qDebug() << "Ошибка открытия";
}
if(file1.isOpen() && file2.isOpen()){
    QByteArray block = file1.readAll();
    file2.write(block);
    file1.close();
    file2.close();
}