2017-02-18 120 views
-1

我正在使用Swift 3,Xcode 8.2,iOS 10如何將圖像寫入文件?

爲了調試的目的,我正在嘗試拍攝圖像,裁剪並顯示裁剪圖像的外觀。我試圖把這個圖像寫到我的電腦(Mac OS X)桌面上,但是我找到的所有教程都將其寫入到我的文檔目錄中,我錯誤地認爲它實際上是我的計算機上的一個目錄,但事實證明它就是這個位置在電話本身,我無法弄清楚如何訪問。

我有這個至今:

let finalImage : UIImage 

    let crop_section = CGRect(x: 0.0, y: 0.0, width: 1000.0, height: 1000.0) 

    let cg_image = screenshot.cgImage?.cropping(to: crop_section) 
    finalImage = UIImage(cgImage: cg_image!) 

    let documentsDirectoryURL = try! FileManager().url(for: .documentDirectory, in: .userDomainMask, appropriateFor: nil, create: true) 
    // create a name for your image 
    print(documentsDirectoryURL) 
    let fileURL = documentsDirectoryURL.appendingPathComponent("cropped.png") 


    if !FileManager.default.fileExists(atPath: fileURL.path) { 
     do { 
      try UIImagePNGRepresentation(finalImage)!.write(to: fileURL) 
      print("Image Added Successfully") 
     } catch { 
      print(error) 
     } 
    } else { 
     print("Image Not Added") 
    } 

我想要的東西,如../Desktop/cropped.png更換documentDirectory但我無法弄清楚如何做到這一點。任何幫助將不勝感激!

+1

'iOS'沒有'Desktop'目錄,雖然... –

+1

在模擬器中運行您的應用程序,該文件將保存在您的Mac上。 – rmaddy

+0

請同時參閱http://stackoverflow.com/questions/31709727/ios-load-file-from-documents-directory – rmaddy

回答

2

我想要的東西來代替documentDirectory像../Desktop/cropped.png

你不能。這是一個iOS程序。 iOS應用程序在iOS設備/模擬器上的自己的一組目錄中進行沙盒處理;它無法聯繫到並查看Mac OS X桌面。他們是兩個不同的宇宙。