簡體   English   中英

StringByAppendingPathComponent()和WriteToFile()

[英]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)

關於第二個問題:

writeToFilewrite(to:之間的主要區別是,第一個用於String ,第二個用於NSData

有點相關:

根據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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM