假设我需要将许多图像写入iPhone文件系统。我需要找到我有足够的空间将图像写入磁盘。是否有可能使用iPhone SDK?检测到没有磁盘空间iPhone SDK
回答
是的,这是可能的。请参见下面的教程(使用强大的 “谷歌” 搜索引擎找到);)
编辑:添加响应回复:写的UIImage磁盘,未知可用磁盘空间:
的try-catch做事的坏方法。可可的例外仅限于真正的特殊情况(即可靠性)。如果你写使用
NSData *imageData = [myImage UIImageJPEGRepresentation];
(或UIImagePNGRepresentation)
和你的图像,然后
NSError *error;
BOOL success = [imageData writeToFile:(NSString *)path options:(NSDataWritingOptions)mask error:&error];
你BOOL
failed
会告诉你,如果它的工作,并error
将包含一个NSError
对象与说明的错误(不要为error != nil
测试,偶尔会崩溃)。通话结束后',这样你就可以安全地测试`误差= nil`;
感谢您的回复。我很早就看到了这些链接,但是我的问题是在将UIImage写入磁盘之前,我需要获得它的大小,并且需要将它与可用磁盘空间进行比较。如何在写入磁盘之前获取UIImage的大小。或者在溢出的情况下,我可以在@try {} @ catch(NSException * e){NSatch(@“catching%@ reason%@”,[e name],[e reason])中捕获任何类型的异常。 } @finally { } – Matt
@ user970349这是一种糟糕的做事方式。可可的例外仅限于真正的特殊情况(即可靠性)。如果你用'NSData * imageData = [myImage UIImageJPEGRepresentation];'(或'UIImagePNGRepresentation'),然后是'NSError * BOOL成功= [imageData writeToFile:(NSString *)path options:(NSDataWritingOptions)mask error:&error];'你的BOOL失败会告诉你它是否工作,并且错误将包含一个NSError对象并描述错误(don' t测试'错误!= nil'虽然,偶尔会崩溃)。 –
感谢您的回复。我是iPhone新手,正在寻找这样一个详细的答案。 – Matt
- 1. iPhone:可用磁盘空间
- 2. Elasticsearch没有可用的磁盘空间
- 3. 有没有办法检测应用程序使用的磁盘空间?
- 4. 在iPhone上保留磁盘空间
- 5. 从iPhone SDK访问iPhone磁盘
- 6. 使用R的磁盘空间预测
- 7. 如何检查可用磁盘空间?
- 8. 广告磁盘空间vs实际磁盘空间
- 9. 虚拟机增加磁盘空间并达到磁盘空间不足问题
- 10. Xcode没有检测到iPhone
- 11. iPhone上的应用程序有多少磁盘空间可用?
- 12. OpenFeint磁盘空间占用空间
- 13. 清除MySQL磁盘空间
- 14. 扩展磁盘空间EC2
- 15. 分析SVN磁盘空间
- 16. Eclipse .metadata \ .plugins磁盘空间
- 17. MongoDB磁盘空间回收
- 18. Solr保留磁盘空间
- 19. Kamon,Statsd,Grafana磁盘空间
- 20. 有关磁盘空间的脚本
- 21. 有没有办法让NetBeans使用Amazon-ec2磁盘空间?
- 22. 在检测到可用磁盘空间的同时获取了错误的值
- 23. Web部署任务失败。 (Web Deploy检测到磁盘空间不足。)
- 24. Visual Studio 2017 - 没有足够的磁盘空间
- 25. OSX,android模拟器,Xamarin =没有磁盘空间
- 26. Android SDK需要大量的磁盘空间
- 27. Nodjs Sqllite3没有冲洗到磁盘
- 28. 检测键盘空间点击
- 29. 我如何找出iphone的磁盘空间?
- 30. iPhone应用程序可以使用的最大磁盘空间
你应该初始化'NSError *误差=零! :-)然后它不会再崩溃了。 –
直接从WWDC对话:错误值是* undefined *,除非该方法返回false。如果方法返回false,您应该只检查/信任/使用错误值。 –
@KennyWinker你成功检查了这个错误吗?当磁盘空间不足时,错误包含什么信息? – onmyway133