无法创建QFILE(仅使用MSVC2017 UWP)

fail to create QFile (only with msvc2017 uwp)

本文关键字:MSVC2017 UWP 创建 QFILE      更新时间:2023-10-16

创建一个简单的应用程序qt5.12,5.13编译uwp mcvc 64 bit 2017

尝试创建文件:

bool ret;
FILE *fp = fopen ("Name","w+"); // this command return NULL
QFile file("Name");
Ret = file. open(QIODevice::ReadWrite);

也提交了:

winrtrunner.app: QIODevice::write (QFile, "Name"): device not open

如果fopen ("Name","w+")返回NULL,则无法打开该文件。因此

您需要找出为什么您无法打开它。首先,您应该在失败的fopen后立即检查errno,或使用perror获得更可读的输出:

FILE *fp = fopen("Name", "w+");
if (fp == NULL) perror("Could not open file: ");

此外,您可以使用(继承的(QIODevice::errorString()

检查失败的QFile.open()的原因
ret = file. open(QIODevice::ReadWrite);
if (! ret) {
    const auto problem = file.errorString();
    // Now log problem somehow.
}