iPhone - 在模拟器上将UIImage保存到桌面

时间:2011-04-26 17:55:03

标签: iphone uiimage ios-simulator

我目前正在使用模拟器。 我想将UIImage保存到桌面上的jpg文件中。

似乎我遇到路径或其他问题。

感谢您的帮助:)

4 个答案:

答案 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)