gpt4 book ai didi

ios - 如何以 QLPreviewController swift 语言显示 .doc 文件

转载 作者:行者123 更新时间:2023-11-29 05:45:21 25 4
gpt4 key购买 nike

我是 ios 开发新手,我正在尝试显示不同格式的文件(例如 docx、doc、pdf、csv),它对于 .pdf 文件工作正常,但对于 .doc 文件它无法预览。 enter image description here

这是模拟器中显示的内容

对于一些 .doc 文件和 pdf 文件,它可以工作!!1

代码:

override func viewDidLoad() {
super.viewDidLoad()
}
@IBAction func handlePress(){

let previewController = QLPreviewController()
previewController.dataSource = self
present(previewController, animated: true)
}
func numberOfPreviewItems(in controller: QLPreviewController) -> Int {
return 3
}
func previewController(_ controller: QLPreviewController, previewItemAt index: Int) -> QLPreviewItem {
guard let url = URL(string: "**urlpath**/q.DOC") else {
fatalError("Could not load")
}

return url as QLPreviewItem
}

最佳答案

首先您需要下载文件并保存在本地存储中。还有一件事是 .do 文件不应该存在。因此,您必须确保您的文件是 .docx.pdf

你可以尝试这样:

func previewController(_ controller: QLPreviewController, previewItemAt index: Int) -> QLPreviewItem {

// ---- First way -----
guard let strPath = Bundle.main.path(forResource: "demo.docx", ofType: nil) else { return "" as! QLPreviewItem }
//guard let strPath = Bundle.main.path(forResource: "demo", ofType: "docx") else { return "" as! QLPreviewItem }
let filePath = "file://\(strPath)"
let url = URL(string: filePath)

// ---- Second way -----
guard let strPath = Bundle.main.path(forResource: "demo.docx", ofType: nil) else { return "" as! QLPreviewItem }
//guard let strPath = Bundle.main.path(forResource: "demo", ofType: "docx") else { return "" as! QLPreviewItem }
let url = URL(fileURLWithPath: strPath)

return url as QLPreviewItem
}

.docx file display on iPhone

关于ios - 如何以 QLPreviewController swift 语言显示 .doc 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56200453/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com