OGeek|极客世界-中国程序员成长平台

标题: iphone - 文件名中的编码信息 (iPhone/mac) [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 10:52
标题: iphone - 文件名中的编码信息 (iPhone/mac)

我想在文件名中编码一个短标题。问题是有时标题会包含一个字符,例如冒号或斜杠。是否有一个标准的编码是典型的/适合的?

编辑:澄清一下,我想对标题进行编码,使编码的标题可以用作文件名。还是叫百分比转义?



Best Answer-推荐答案


我这样做的方法是使用 NSURL 上的一个类别,我用它来获取特定目录中文件名的 NSURL。一旦我有了这个 NSURL,我就可以在对文件是否已经存在进行常规检查并相应地处理这些情况之后,使用 URL 获取或保存文件。

相关代码片段为:

+ (NSURL *)adnURLForFileNameNSString *)fileName inDirectoryNSSearchPathDirectory)searchDirectory {
    NSString *percentEscapedFileName = [fileName stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

    NSFileManager *fileManager = [[NSFileManager alloc] init];

    NSURL *URLForDirectory = [[fileManager URLsForDirectory:searchDirectory inDomains:NSUserDomainMask] objectAtIndex:0];

    return [NSURL URLWithString:percentEscapedFileName relativeToURL:URLForDirectory];
}

您可以从 GitHub 下载完整的类别代码 - NSURL+ADNFileHelpers

关于iphone - 文件名中的编码信息 (iPhone/mac),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8962176/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://sqlite.in/) Powered by Discuz! X3.4