Hen*_*ler 12 string file swift
我想知道将文本文件读入字符串数组中最简单,最干净的是快速的.
文本文件:
line 1
line 2
line 3
line 4
Run Code Online (Sandbox Code Playgroud)
进入这样的数组:
var array = ["line 1","line 2","line 3","line 4"]
Run Code Online (Sandbox Code Playgroud)
我也想知道如何在这样的结构中做类似的事情:
Struct struct{
var name: String!
var email: String!
}
Run Code Online (Sandbox Code Playgroud)
所以拿一个文本文件并将其放入数组中的struct中.
谢谢您的帮助!
Adr*_*ian 14
针对Swift 3进行了更新
var arrayOfStrings: [String]?
do {
// This solution assumes you've got the file in your bundle
if let path = Bundle.main.path(forResource: "YourTextFilename", ofType: "txt"){
let data = try String(contentsOfFile:path, encoding: String.Encoding.utf8)
arrayOfStrings = data.components(separatedBy: "\n")
print(arrayOfStrings)
}
} catch let err as NSError {
// do something with Error
print(err)
}
Run Code Online (Sandbox Code Playgroud)
Ian*_*Ian 10
首先,你必须阅读文件:
let text = String(contentsOfFile: someFile, encoding: NSUTF8StringEncoding, error: nil)
Run Code Online (Sandbox Code Playgroud)
然后使用以下componentsSeparatedByString方法将其分开:
let lines : [String] = text.componentsSeparatedByString("\n")
Run Code Online (Sandbox Code Playgroud)
为 Swift 5 更新:
const 路径包含文件路径。
do {
let path: String = "file.txt"
let file = try String(contentsOfFile: path)
let text: [String] = file.components(separatedBy: "\n")
} catch let error {
Swift.print("Fatal Error: \(error.localizedDescription)")
}
Run Code Online (Sandbox Code Playgroud)
如果要file.txt逐行打印里面的内容:
for line in text {
Swift.print(line)
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12587 次 |
| 最近记录: |