我目前正在使用模拟器。 我想将UIImage保存到桌面上的jpg文件中。
似乎我遇到路径或其他问题。
感谢您的帮助:)
答案 0 :(得分:29)
以下内容应该让您入门... myImage
是一个UIImage对象。
NSFileManager *fileManager = [NSFileManager defaultManager];
NSData *myImageData = UIImagePNGRepresentation(myImage);
[fileManager createFileAtPath:@"/Users/Me/Desktop/myimage.png" contents:myImageData attributes:nil];
修改:注意到您想要一张JPG图片,您可以使用UIImageJPEGRepresentation()
获取JPG的NSData
代表,这样:
NSData *myImageData = UIImageJPEGRepresentation(myImage, 1.0);
注意:这对快速和脏测试很有用,但我建议学习如何写入应用程序的文档目录,然后使用Finder查找那里的文件。模拟器中应用程序文档目录的示例路径是:
/Users/Me/Library/Application Support/iPhone Simulator/4.3/Applications/1E2C2C81-1ED6-4DC9-CDD0-CA73FB56501F/Documents
答案 1 :(得分:1)
尝试转到cd /Users/{your username}/Library/Application\ Support/iPhone\ Simulator/4.3/Applications/{application id}/Documents/
将{your username}
替换为您的mac用户名,{application id}
是您的应用程序GUID(随机)。您也可以将4.3
更改为为您的应用构建的版本
答案 2 :(得分:0)
模拟器模拟沙盒应用程序,但由于它在Mac上,您可以访问存储应用程序及其所有文件的目录。因此,在您的应用程序中,如果您可以弄清楚如何将数据写入文件(在应用程序的沙箱中),那么您可以使用Finder找到目录并找到该文件。这有帮助还是我错过了什么?
答案 3 :(得分:0)
Swift ,
func outputImage(name:String,image:UIImage){
let fileManager = FileManager.default
let data = UIImagePNGRepresentation(image)
fileManager.createFile(atPath: "/Users/UserName/Projects/MyProject/testImages/\(name)", contents: data, attributes: nil)
}
这样打电话,
outputImage(name: "imageName.png", image: image)