[英]StringByAppendingPathComponent() and WriteToFile()
我正在嘗試通過翻譯Swift 2中的代碼來學習Swift3。在swift 2中,我看到這樣的代碼:
return fullPath.stringByAppendingPathComponent(name)
但是,當我嘗試使用Swift 3時,我得到了類似的代碼,但是像這樣:
return fullPath.strings(byAppendingPaths: [name])
問題是,第一個代碼中的返回類型是String(這是我從本課中學到的輸出),但是第二個代碼中的返回類型應該是[String]。
另一個問題是,在Swift 2中,代碼應為:
imgData?.WriteToFile(fullPath, atomicaly:Bool)
但是在Swift 3中,我只能輸入如下代碼:
imgData.Write(to: URL , option: WritingOption) throws
但是在某些示例中,有.Write(toFile:,原子地:),但是我在Xcode中找不到它。
我翻譯不正確還是使用Swift 2和Swift 3錯誤?
關於問題的第一部分 ,如dan在評論中所述,您應該改用fullPath.appendingPathComponent(name)
。
關於第二個問題:
writeToFile
和write(to:
之間的主要區別是,第一個用於String
,第二個用於NSData
。
有點相關:
在iOS 2.0+中,您可以:
write(to:atomically:)
和
write(toFile:atomically:)
鑒於:
由於當前僅支持file:// URL,因此該方法與writeToFile:atomically:之間沒有區別,除了第一個參數的類型之外。
根據Swift Changelog ,這一切在Swift 3中都沒有改變。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.