2017-02-15 86 views
1

在Ubuntu上運行swift 3.0.2。Ubuntu上的Swift:使用未聲明的類型'NSFileHandle'

當我運行下面的代碼

import Foundation 
let file: NSFileHandle? = NSFileHandle(forReadingAtPath: "data.txt") 

我得到

test.swift的錯誤:274:11:錯誤:使用未聲明的類型 'NSFileHandle' 讓文件:NSFileHandle? = NSFileHandle(forReadingAtPath:「data.txt」)

NSFileHandle在基金會的API中,但對於Linux上的基礎庫是否正確?

我在做什麼錯?

問候,

回答

1

SE-0086 Drop NS Prefix in Swift Foundation

As part of Swift 3 API Naming and the introduction of Swift Core Libraries, we are dropping the NS prefix from key Foundation types in Swift.

NSFileHandle是在列表和斯威夫特3被稱爲FileHandle

import Foundation 
let file = FileHandle(forReadingAtPath: "data.txt") 

這適用於蘋果平臺和Linux系統。 Linux實現可以在這裏看到: NSFileHandle.swift

有一個關於撤消重命名和在一個更 夫特狀的方式實施FileHandle(如throw荷蘭國際集團代替 NSException雨燕錯誤)討論[swift-evolution] Pitch: Replacement for FileHandle

相關問題