I've finally had to "upgrade" to OS X 10.7 (which I REALLY HATE). Some of the object methods in my code have been deprecated. One that is used in my code to save data in files is:
[NSSavePanel* filename];
According to the Documentation you should use [NSSavePanel URL] instead. A lot of objects can use a URL instead of an NSString - for example [NSImage writeToURL: atomically:];
One method that still needs an NSString is the NSKeyedArchiver method
archiveRootObject:toFile: - file is an NSString.
Theoretically one could get the NSSavePanel's URL using [NSSavePanel URL] and then get an NSString using some NSString method like
+ stringWithContentsOfURL:usedEncoding:error:
initWithContentsOfURL:usedEncoding:error:
For some reason these return a nil NSString and error looks like an NSCocoaDomainError, code 260.
Perhaps one of you could suggest how I might continue to use archiveRootObject:toFile: without relying on the deprecated method [NSSavePanel filename].
[NSSavePanel* filename];
According to the Documentation you should use [NSSavePanel URL] instead. A lot of objects can use a URL instead of an NSString - for example [NSImage writeToURL: atomically:];
One method that still needs an NSString is the NSKeyedArchiver method
archiveRootObject:toFile: - file is an NSString.
Theoretically one could get the NSSavePanel's URL using [NSSavePanel URL] and then get an NSString using some NSString method like
+ stringWithContentsOfURL:usedEncoding:error:
initWithContentsOfURL:usedEncoding:error:
For some reason these return a nil NSString and error looks like an NSCocoaDomainError, code 260.
Perhaps one of you could suggest how I might continue to use archiveRootObject:toFile: without relying on the deprecated method [NSSavePanel filename].