我已成功根据文本文件制作了自定义文件类型。我在我的应用程序中放了一个打开的命令,它运行得很好。我的问题是,当我双击其中一个文件时,它会打开我的应用程序,但它告诉我,我的应用程序无法打开这些文件。
我的代码如下。
Files.h
@interface Files : NSObject {
IBOutlet id name;
}
- (IBAction) open: (id) sender;
Files.m
- (IBAction) open: (id) sender; {
NSOpenPanel *theOpenPanel = [NSOpenPanel openPanel];
NSArray* fileTypes = [[NSArray alloc] initWithObjects:@"hsc", @"HSC", nil];
[theOpenPanel setAllowedFileTypes:fileTypes];
if ([theOpenPanel runModal] == NSOKButton) {
NSString *theFileName = [theOpenPanel filename];
NSString *data = [NSString stringWithContentsOfFile:theFileName];
[name setStringValue:data];
}
}
当我告诉我的程序打开文件时,它会根据需要放入所有数据。当我双击我的文件时,没有任何反应。
重要说明:我刚发现“.hsc”是Windows 7中使用的文件。我将在解决此问题后更改文件扩展名。
答案 0 :(得分:2)
你应该定义
- (BOOL)application:(NSApplication *)theApplication openFile:(NSString *)filename
在你的AppDelegate类中来处理加载文件。确保从此方法返回YES以指示文件已成功打开。