如何在iOS中读取,写入和检查不区分大小写的文件名?

Ant*_*ton 5 file-io objective-c case-sensitive case-insensitive ios

我知道iOS文件名区分大小写,而OSX文件名可能不区分大小写.Apple的iCloud设计指南说:

"要使文档文件格式跨平台兼容,您必须以不区分大小写的方式读写文件." (来自http://developer.apple.com/library/ios/#documentation/General/Conceptual/iCloudDesignGuide/Chapters/DesigningForDocumentsIniCloud.html)

我想让我的应用程序的文件管理在iOS中不区分大小写.处理读写文件的正确方法是什么,并且[NSFileManager fileExistsAtPath:]在iCloud和本地文件系统中以不区分大小写的方式检查iOS中是否存在(使用)文件?

Rob*_*ier 6

没有具体的东西可以使iOS不区分大小写.就是这样.他们告诉你的是,你不能依赖于区分大小写(不要创建仅根据大小写区分的文件),并且你不应该对你的案例使用过于草率(不要创建"自述"然后阅读"自述").

如果您在iOS上接受来自用户的任意文件名,然后计划将这些文件名发送到iCloud,那么您将需要查询iCloud上存在的所有文件并验证不存在不区分大小写的冲突(使用[NSString caseInsensitiveCompare:]).但是,只要您专门使用iCloud,这不应该出现太多.