【问题标题】:Finder showing document bundle extensionFinder 显示文档包扩展名
【发布时间】:2011-07-08 21:32:39
【问题描述】:

我想创建一个文档包包,因此我将适当的信息添加到我的应用程序的 Info.plist 中,并使用控制台创建了一个带有扩展名的测试文件夹。 Finder 将文件夹显示为带有我在 plist 中设置的图标的包/捆绑包,当我双击时会尝试在我的应用程序中打开它。

一切都很好,但是即使扩展名被隐藏,Finder 也会显示“folder.extension”。我可以使用 Finder 删除扩展,该文件夹将显示为包“文件夹”,并具有“folder.extension”的真实名称。如何以编程方式创建文件夹以使 Finder 不显示扩展名?

【问题讨论】:

  • 似乎如果你添加“隐藏扩展”位,那么我得到了我正在寻找的东西,即SetFile -a E folder.extension。关于如何以编程方式执行此操作的任何想法?

标签: macos


【解决方案1】:

正如用户 Eonil 提到的答案中所给出的,您可以通过 NSFileManager 使用一点 Objective-C 来做到这一点:

NSString *mystring = [[NSString alloc] initWithCString:filename encoding:NSUTF8StringEncoding];

NSDictionary *attributes = [NSDictionary dictionaryWithObject:[NSNumber numberWithBool:YES]
                                                               forKey:NSFileExtensionHidden];

NSFileManager *fm = [NSFileManager defaultManager];

BOOL result = [fm setAttributes:attributes ofItemAtPath:mystring error:nil];

【讨论】:

    猜你喜欢
    • 2021-04-27
    • 2018-04-28
    • 1970-01-01
    • 2015-01-20
    • 2017-11-18
    • 1970-01-01
    • 2012-01-10
    • 2011-02-20
    • 1970-01-01
    相关资源
    最近更新 更多