ios - 如何在 iOS 项目中获取项目文件的路径?
问题描述
如果我将 CSV 文件添加到我的 iOS 项目中。如何将该文件作为路径引用,以便 CSVReader 找到该文件?
目前我只是将文件拖到 Xcode 中的 Project-Folder 中。文件在那里,但是我需要告诉 InputStream(fileAtPath: "/path/to/file.csv")!
如何告诉 InputStream 该路径在哪里?早些时候,对于模拟器,我只是使用了计算机中的文件路径。但是,当我在物理设备上尝试时,这当然行不通。
有什么建议么?
代码:
// Get file
let stream = InputStream(fileAtPath: "file.csv")! // Error since no idea where to look for file!
let csv = try! CSVReader(stream: stream)
while let row = csv.next(){
// Handle results
}
解决方案
如果文件在应用程序包中,则它位于Resources
文件夹中。
您必须询问Bundle
它的 URL(现在不鼓励文件路径)。
let fileURL = Bundle.main.url(forResource: "file", withExtension: "csv")!
let stream = InputStream(url: fileURL)!
推荐阅读
- python - 初始化其他变量(使用它)后变量的原始值丢失
- c++ - 我的二维数组没有读取我的文本文件并正确输出
- r - 安装 xgboost h2o r
- python - 在格子中计算大小为 l 的窗口中的节点
- c# - 无法使用随机数生成器和 if 语句将类型“int”隐式转换为“bool”
- python - 以下代码行是什么意思以及python解释器如何处理这个
- c# - Swashbuckle 没有在 PCF 上定义操作。工作本地开发
- terraform - aws_elasticache_replication_group 资源与 aws 提供程序版本 2.15 的使用
- java - 如何为流数据创建 Flux/Publisher
- java - if 语句中不考虑布尔方法返回