-->

How to add comments in a file and/or directory pro

2020-03-26 01:56发布

问题:

I am trying to add comment in files and directory programmatically.

Is it possible to do? If yes, please help me to achieve this.

I looked for a direct API from Cocoa framework but no success, I will be happy to do this by any way (cocoa, shell or any scripts).

回答1:

I achieved this by Apple Script wrapped in Objective-C as :

 NSString *comment = @"hi boys";

NSOpenPanel *op = [NSOpenPanel new];
NSInteger answer = [op runModal];
if (answer == NSOKButton) {
    NSURL *url = [op URL];

    NSMutableString *appleScriptString = [NSMutableString new];
    [appleScriptString appendString:@"TELL APPLICATION \"FINDER\"\n"];

    NSString *setPath = [NSString stringWithFormat:@"SET filePath TO \"%@\" AS POSIX FILE \n", [url absoluteString]];
    [appleScriptString appendString:setPath];

    NSString *setComment = [NSString stringWithFormat:@"SET COMMENT OF (filePath AS ALIAS) TO \"%@\" \n", comment];
    [appleScriptString appendString:setComment];

    [appleScriptString appendString:@"END TELL"];

    NSAppleScript *commentorScript = [[NSAppleScript alloc] initWithSource:appleScriptString];
    NSDictionary *dictErr;
    [commentorScript executeAndReturnError:&dictErr];
    NSLog(@"Dict error = %@", dictErr);
}


回答2:

AFAIK there is no public API, if you google for Spotlight comments you will see various solutions which all are based on AppleEvents, Applescript or xattr.. like

http://www.cocoabuilder.com/archive/cocoa/178663-writing-spotlight-comments.html http://www.cocoabuilder.com/archive/cocoa/305493-adding-spotlight-comment-data-to-folder-file.html http://cocoadev.com/SpotlightAndTagging