我使用swift讀取文件時遇到問題。我尋覓了很多網絡瑟如果我能找到任何東西上,我發現了3種不同的,但我不能讓任何人的工作Swift - 讀取文件
在這裏,他們是:
import Foundation
//----- 1 ------
var error: NSErrorPointer = nil
let url = NSURL(string: "ISO.csv")
let csvString = String(contentsOfURL:url!, encoding: NSUTF8StringEncoding, error: error);
println("contest")
println(csvString)
//----- 2 ------
func readFile(fileName: String, fileType: String) -> String{
var fileRoot = NSBundle.mainBundle().pathForResource(fileName, ofType: fileType)
var contents = NSString.stringWithContentsOfFile(fileRoot!, encoding: NSUTF8StringEncoding, error: nil)
return contents
}
// example: read file.txt
var contents = readFile("ISO", "csv")
println(contents)
//----- 3 -----
let path = NSBundle.mainBundle().pathForResource("ISO", ofType: "csv")
var data = String.stringWithContentsOfFile(path, encoding: NSUTF8StringEncoding, error: nil)
在1號:它只是返回一個零。但它與從網站返回的數據
號2:/ISO/main.swift:26:20: 'String.Type' does not have a member named 'stringWithContentsOfFile'
數3:提前/ISO/main.swift:38:21: 'stringWithContentsOfFile(_:encoding:error:)' is unavailable: use object construction 'NSString(contentsOfFile:encoding:error:)'
我不知道該怎麼辦,希望你們當中有些人知道,謝謝
這是因爲在XCode的6.1,初始化現在可以失敗,因此蘋果改變了很多「類funcs中」來初始化的。網絡上的部分樣本仍然使用6.1之前的功能。見https://developer.apple.com/library/ios/releasenotes/DeveloperTools/RN-Xcode/Chapters/xc6_release_notes.html – tng 2014-12-04 18:50:06
這是我從中得到的:http://i58.tinypic.com/2z6wo0o.png – Andy 2014-12-04 18:57:56
@Andy這很可能是因爲'path'是'nil'。你確定文件名和類型是否正確,文件是否被添加到包中? – Jack 2014-12-04 19:10:36