Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.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++ QPixmap::save()返回成功,但不生成任何文件_C++_Qt_Qtgui_Qpixmap_Qdebug - Fatal编程技术网

C++ QPixmap::save()返回成功,但不生成任何文件

C++ QPixmap::save()返回成功,但不生成任何文件,c++,qt,qtgui,qpixmap,qdebug,C++,Qt,Qtgui,Qpixmap,Qdebug,政府说这应该有效: bool did=pixmap.save( "hoppy.png" ); qDebug("did is: %d",did); 根据文档,我的日志返回1提示保存成功。但是,我的驱动器上没有显示任何文件。根据文档,这个save()确实应该保存一个文件,那么缺少什么呢?另一个答案是: 没有遗漏;它只是保存到运行qt可执行文件的文件夹中 然而,我的问题表明,事实并非如此 使用完整路径而不是相对路径,或者使用~字符来解析它 根据文档,这个save()确实应该保存一个文件,那么缺少什

政府说这应该有效:

bool did=pixmap.save( "hoppy.png" );

qDebug("did is: %d",did);
根据文档,我的日志返回
1
提示保存成功。但是,我的驱动器上没有显示任何文件。根据文档,这个
save()
确实应该保存一个文件,那么缺少什么呢?

另一个答案是:

没有遗漏;它只是保存到运行qt可执行文件的文件夹中

然而,我的问题表明,事实并非如此

使用完整路径而不是相对路径,或者使用~字符来解析它

根据文档,这个save()确实应该保存一个文件,那么缺少什么呢

没有遗漏;它只是保存到运行qt可执行文件的文件夹中。如果它是直接调用,那么它就在可执行文件旁边,否则它就在调用qt可执行文件的脚本或其他程序旁边(当然,其他程序可以修改当前工作目录,但让我们暂时忘记这一点)


如果您不希望这样做,那么最好使用指向希望保存位置的绝对路径。但是,如果它是一些常见的位置,考虑使用<代码> QStandardPaths < /代码>。< /P>你确定你在正确的目录中查找吗?请指定完整路径以确保。使用windows搜索、聚光灯或定位(取决于您的平台)查找文件。就在那里。它不是您要查找它的地方。@Mat我很好奇,它会不会将它转储到可执行文件的实际目录中?我还使用spotlight在我的Mac电脑上进行了完整搜索,但找不到它。当代码运行时,它会将其写入当前目录中的任何目录中。可以是可执行文件所在的位置,也可以是其他任何位置。@Mat在Mac上,我试图指定类似于
~/filename.png
的内容,然后
save()
返回false。否,不应使用“~”@拉兹洛帕普我知道,这是误用了,谢谢,我会说得更清楚的。它说的是“而不是相对路径或[而不是]字符”。短语“它只是保存到运行qt可执行文件的文件夹中”在这种情况下是不正确的,尽管这是一个不错的想法,但我删除了这是选择的答案。我的问题清楚地表明,在这种情况下,这种行为不会发生,因为系统上没有任何文件出现。而且,谢谢主席先生,在你的回答中,我对我的问题投了否决票。我很高兴有像你这样的优秀用户,他们看重的是声誉得分,而不是质量推理。谢谢你删除了不必要的评论。这有助于提高网站质量。我建议你以后不要太关注某个答案的投票细节,而要更多关注答案的质量。