pdf를 다운로드하고 문서 디렉토리에 저장 한 다음 웹보기로로드하는 데 문제가 있습니다. 전에 디렉토리에 물건을 저장하고 UIWebView를 저장하기 전에 다운로드 할 수있는 경험이 없습니다.PDF를 다운로드하여 문서 디렉토리에 저장하고 UIWebView에로드하십시오.
이 질문을하기 전에 여러 StackOverflow 질문을 검색하고 최선을 다했으나 여전히 작동하지 않습니다. 내가 URL에서 PDF를 다운로드하고
let myURL = URL(string: "https://example/example/product.pdf")
let urlRequest = NSURLRequest(url: myURL!)
do {
let theData = try NSURLConnection.sendSynchronousRequest(urlRequest as URLRequest, returning: nil)
var docURL = (FileManager.default.urls(for: .documentDirectory, in: .userDomainMask)).last as? NSURL
docURL = docURL?.appendingPathComponent("my.pdf") as NSURL?
try theData.write(to: docURL as! URL)
print("downloaded")
} catch (let writeError) {
print("error : \(writeError)")
}
잠시 및 인쇄를위한 응용 프로그램이 일시 정지는 "다운로드"디렉토리에게 문서로 저장하는 방법
먼저이
이 내가 확인하는 방법입니다 내 문서 디렉토리에있는 연락처 목록
let docURL = (FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).last)
do{
let contents = try (FileManager.default.contentsOfDirectory(at: docURL!, includingPropertiesForKeys: nil, options: FileManager.DirectoryEnumerationOptions.skipsHiddenFiles))
print("There are")
print(contents)
}
catch (let error)
{
print("error contents \(error)")
}
It p "있다 [파일 : ///private/var/mobile/Containers/Data/Application/DF6A310C-EB7E-405E-9B1B-654486B5D03A/Documents/my.pdf]"rints
이 내가로드하는 방법입니다 웹보기
var webView = UIWebView(frame : vc.view.frame)
webView.scalesPageToFit = true
var paths = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true)
var documentsDirectory = paths[0]
var filePath = URL(fileURLWithPath: documentsDirectory).appendingPathComponent("my.pdf").absoluteString
var targetURL = URL(fileURLWithPath: filePath)
var request = URLRequest(url: targetURL)
webView.loadRequest(request)
vc.view.addSubview(webView)
에 PDF는 웹보기가 나타나지만 아무것도 표시되지 않습니다. my.pdf가 실제로 읽을 수있는 PDF 형식으로 저장되면 정말 혼란 스럽습니다.
info.plist에 무언가를 추가하거나 앱 기능에서 무언가를 사용해야하는 것과 같은 것들이 있는지 알 수 없습니다. 고맙습니다. filePath
의 값이 유효하지 않습니다 있도록
var filePath = URL(fileURLWithPath: documentsDirectory).appendingPathComponent("my.pdf").absoluteString
var targetURL = URL(fileURLWithPath: filePath)
이 URL absoluteString
의 가치는 당신에게 파일 경로를 제공하지 않습니다
'NSURLConnection'이되지 않습니다 사용'NSURLSession' 지금 – Rajat
안녕 @thura oo의 내가 있도록 답변으로 사용자의 작업 코드를 제공하여 주시기 바랍니다 가능한 경우 : 이것은 내가 제안 코드가 지금해야 의미 누군가가 도움을 받거나 그것으로부터 배울 수 있습니다. 제 경우에는 당신과 같은 시나리오를 가지고 있지만이 단계를 수행하는 방법을 알 수는 없습니다. 귀하의 코드로 도와주세요. 미리 감사드립니다. – deltami