我正在获取PDF数据。它为我提供了URL,当我将其转换为base64时。这是我得到的结果:
无法打开文件“file.pdf”,因为您没有查看该文件的权限。
我不明白为什么它给这个。这是我如何得到pdf文件网址:
@State var openPDF = false
@State var fileName = ""
@State var pdfFile : URL?
var body: some View {
Button {
self.openPDF.toggle()
}, label {
Text("Add Attachment")
}.fileImporter(isPresented: $vm.openPDF, allowedContentTypes: [.pdf]) { result in
do {
let fileURL = try result.get()
print(fileURL)
self.fileName = fileURL.lastPathComponent
self.pdfFile = fileURL
} catch {
print("error getting documents")
print(error.localizedDescription)
}
}
}
下面是我将其转换为base64的方法:
do {
let filePath = pdfFile
let fileData = try Data.init(contentsOf: filePath!)
let fileStream:String = fileData.base64EncodedString()
print(fileStream)
} catch {
print("error")
print(error.localizedDescription)
}
在这个do-catch中,它给出了错误“这个文件不能被打开,因为你没有权限。
1条答案
按热度按时间5us2dqdw1#
执行此操作可将PDF转换为Base64字符串: