【问题标题】:cascades bb10 qfile remove级联 bb10 qfile 删除
【发布时间】:2015-03-17 07:19:27
【问题描述】:

我想从存储中删除/删除文件。该文件存储在“/shared/photos/”中。这就是我存储文件的方式

QByteArray* data; //some image data
QImage image;
image.loadFromData(*data);
QFile outFile("shared/photos/"+filename);
outFile.open(QIODevice::WriteOnly);
image.save(&outFile, "PNG");

我可以使用此代码成功查看图像文件:

QString filepath;
QString workingDir = QDir::currentPath();
filepath = "file://" + workingDir + "/shared/photos/"+filename;

而且查看没问题。

QString“文件路径”包含这个字符串

"file:///accounts/1000/appdata/com.example.Project.testDev_le_Project4b5f4904/shared/photos/02.jpg"

现在我尝试从存储中删除/移除此文件。 我就是这样尝试的:

QString thumbnailImage = filepath;
// basically it contains string like filepath
//"file:///accounts/1000/appdata/com.example.Project.testDev_le_Project4b5f4904/shared/photos/02.jpg"
QFile thumb(thumbnailImage); 
bool ok = thumb.remove(); 
QString error = thumb.errorString(); 
if(ok){ qDebug() << "delete thumbnailImage success = " << ok; }
else{ qDebug() << "delete thumbnailImage failed !! "; }

它不工作。调试显示“没有这样的文件或目录”。

i also tried 
QFile::remove(thumbnailImage);

仍然无法正常工作。 我也试过了:

QFile::remove("/shared/photos/"+filename);

但仍然无法正常工作。 我还尝试将工作目录从QDir::currentPath() 更改为QDir::homepath(),但仍然没有成功。

所以请告诉我应该在 QFile::remove() 参数中添加什么。 参考https://developer.blackberry.com/native/reference/cascades/qfile.html#remove 说参数是QString 文件名。

bool QFile::remove ( const QString & fileName )

我到底应该插入什么参数? 请帮帮我。

谢谢。

问候, 瑜伽尝试 Utomo

【问题讨论】:

    标签: qt blackberry-10 blackberry-cascades qfile


    【解决方案1】:

    文件路径错误。它不应包含“file://”。此外,您必须在删除之前打开文件。

    QFile thumb("shared/photos/" + filename);
    thumb.open(QIODevice::ReadWrite);
    thumb.remove();
    thumb.close();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-30
      • 1970-01-01
      • 1970-01-01
      • 2015-04-24
      • 1970-01-01
      • 2011-06-29
      相关资源
      最近更新 更多