【问题标题】:Getting nil image even though the file exists in directory即使文件存在于目录中也获取零图像
【发布时间】:2023-03-17 20:04:01
【问题描述】:

我正在将图像保存到我的应用程序目录中,当我尝试使用 imageWithContentsOfFile 检索它时,它返回一个 nil 图像。我已验证该文件存在于应用程序容器中,并且我使用的路径是正确的。有什么想法吗?

如果您需要任何代码,请告诉我。我不确定你需要看什么。

谢谢

顺便说一句,这里是我用于从路径加载图像的确切语法。

UIImage *image = [UIImage imageWithContentsOfFile:path];

【问题讨论】:

  • 你试过UIImage *image = [UIImage imageNamed:filename];吗?
  • 我有,我得到了同样的结果。
  • 当您说在“应用程序目录”中时,您的意思是在项目导航器中吗?如果是这样,请尝试将图像放入Images.xcassets 文件夹中。
  • 我不是指项目导航器。应用程序下载它并将其保存在 tmp 目录中。

标签: ios image null exists


【解决方案1】:

您应该做的第一件事是检查是文件输入/输出问题还是图像问题。所以尝试用

读取你的文件数据
NSData *fileData = [NSData dataWithContentsOfFile:path];

如果 fileData 为 nil 或其长度为 0,那么您应该重新检查路径和存储数据的方式。

如果fileData没问题试试

image = [[UIImage alloc] initWithData:fileData];

检查数据到图像的转换。是否可以使用某些 MacOS 图像查看器打开文件?

【讨论】:

  • 数据很好,当我使用initWithData方法时它仍然返回nil。
  • @linuxer 能否请您添加用于将图像保存到文件的代码?
猜你喜欢
  • 2015-02-01
  • 1970-01-01
  • 2012-01-14
  • 1970-01-01
  • 2018-12-21
  • 1970-01-01
  • 2014-05-16
  • 2013-02-02
  • 1970-01-01
相关资源
最近更新 更多