2017-01-25 2 views
1

내 사진을 로컬 디렉토리에 저장하려고합니다. 나는 컨트롤러를 사용하여 Swift을 사용했다. 그림을 업로드 후 base64String에 업로드 된 그림의 응답이 있습니다.swift : base64String으로 인코딩 된 이미지를 로컬 디렉토리에 저장하는 방법

나는 다음과 같이 변환 :

//encoding 
let base64String = imageData.base64EncodedStringWithOptions(NSDataBase64EncodingOptions(rawValue: 0)) 
print(base64String) 


//decoding 
let decodedData = NSData(base64EncodedString: base64String, options: NSDataBase64DecodingOptions(rawValue: 0)) 
var decodedimage = UIImage(data: decodedData!) 
print(decodedimage) 

//Turning base64 encoded string into an NSData 
let encodedImageData = base64String 
let FinalimageData = NSData(base64EncodedString: encodedImageData, options: []) 
print(FinalimageData) 

let image = UIImage(data: FinalimageData!) 

요구 사항 :

내가 내 로컬 디렉토리에 이미지를 저장합니다. Swift 2을 사용하여 어떻게하면됩니까?

답변

1

다음과 같은 방법으로 이미지를 로컬 디렉토리에 저장할 수 있습니다. 이미지 확장을 fileName과 함께 추가하십시오.

let filePath = "\(NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true)[0])/\(fileName)" 
let imageData : Data = UIImagePNGRepresentation(image)! as Data 
imageData.write(toFile: filePath, atomically: true) 
+0

난 갤러리에서 내 이미지를 채우는거야 .. – Sam

+0

내있는 NSData이 할 수있다 imageData의 :있는 NSData = UIImagePNGRepresentation (pickedImage)! – Sam

0
let documentsURL = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first! 
    let fileURL = documentsURL.appendingPathComponent("\(fileName).png") 
    if let pngImageData = UIImagePNGRepresentation(image) { 
    pngImageData.write(to: fileURL, options: .atomic) 
}