是否可以在iOS中的资产(图像)文件名中使用全部(比方说)中文?如果没有,文件名,字符串搜索和其他文件处理活动支持哪些大语言部分?
答案 0 :(得分:4)
iOS和Mac OS目前使用HFS+ filesystem,它支持文件名中的完整Unicode。这基本上意味着任何角色,包括中文和其他人类语言。文件系统最多允许255个字符,对于大多数语言,这些字符大约为255个代码点。 (我看到一个注释,长度是基于UTF16编码的字符。有些字符需要超过16位进行编码,如表情符号,你也可以使用,但你将允许更少的字符。)
iOS上的文件API(NSFileManager等)应该适应Unicode字符串而无需任何额外的工作。请注意,Unicode序列是以特定方式规范化的:例如é
字符可以在Unicode中以多种不同的方式表示,但将以标准化方式作为文件名进行分解。
最重要的是,您可以随意使用Unicode字符串作为文件名,只要它们的长度合理。因为超长的Unicode名称会以一种稍微不可预测的方式开始运行长度问题(实际上只是复杂且不需要计算),所以你应该设置一些理智的自我长度限制。
APFS是Apple正在开发的下一代文件系统,很快就会出现在iOS上。我找不到关于文件名编码的信息,但它是一个公平的假设,它将支持HFS +支持的任何内容,如果不是更多的话。
答案 1 :(得分:1)
iOS文件系统使用区分大小写的HFSX,它是HFS Plus的变体,对文件名和字符编码使用相同的规则。
这些规则在Apple Technote 1150的几个部分中列出。
重要的考虑因素是:
:
”用作目录分隔符,在文件和文件夹名称中无效。