FROM : Nick Kreeger
DATE : Mon Jun 05 23:40:08 2006
On 6/5/06, Julio Bianco <<email_removed>> wrote:
>
> Hi,
> I'm trying to write son dictionary information in a file, and I
> realize that I can do it using the method
>
> - (BOOL)writeToFile:(NSString *)path atomically:(BOOL)flag
>
> and I use it like this:
>
> +(TCLogger *) instance {
> NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
> NSDictionary *LogFile1 = [[NSDictionary alloc]
> initWithObjectsAndKeys:
> @"one", [NSNumber numberWithInt: 1],
> nil];
>
> if ([LogFile1 writeToFile: @"/Users/jbianco/pueba.log" atomically:
> YES])
> NSLog(@"escribio el archivo2");
> if ([LogFile1 writeToFile: [NSHomeDirectory()
> stringByAppendingPathComponent: @"Desktop/log.conf"] atomically: YES])
> NSLog(@"escribio el archivo");
> [LogFile1 release];
> [pool release];
> return instance;
> }
>
> and when I try to run it, that is not run Ok, because never prints
> those logs, and neither creates the file.
> Can you tell me what am I doing bad?
>
> Thanks
> Julio
> _______________________________________________
Could be that your Dictionary initWithObjectsAndKeys: is not setting up
properly. A NSDictionary will not save to file unless it contains data that
can be archived. Your first step should be to check LogFile1 For instance
your code sample looks like it should write to file, but if you had a
special class, let's say a subclass of NSObject called MyObject. You cannot
write MyObject in your dictionary unless it conforms to the NSCoding
protocol.
Also if you are building inside Xcode, you can specify the path as just @"
LogFile.plist" or something and it will write to the directory of your
current build configuration (debug, release, etc.)
DATE : Mon Jun 05 23:40:08 2006
On 6/5/06, Julio Bianco <<email_removed>> wrote:
>
> Hi,
> I'm trying to write son dictionary information in a file, and I
> realize that I can do it using the method
>
> - (BOOL)writeToFile:(NSString *)path atomically:(BOOL)flag
>
> and I use it like this:
>
> +(TCLogger *) instance {
> NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
> NSDictionary *LogFile1 = [[NSDictionary alloc]
> initWithObjectsAndKeys:
> @"one", [NSNumber numberWithInt: 1],
> nil];
>
> if ([LogFile1 writeToFile: @"/Users/jbianco/pueba.log" atomically:
> YES])
> NSLog(@"escribio el archivo2");
> if ([LogFile1 writeToFile: [NSHomeDirectory()
> stringByAppendingPathComponent: @"Desktop/log.conf"] atomically: YES])
> NSLog(@"escribio el archivo");
> [LogFile1 release];
> [pool release];
> return instance;
> }
>
> and when I try to run it, that is not run Ok, because never prints
> those logs, and neither creates the file.
> Can you tell me what am I doing bad?
>
> Thanks
> Julio
> _______________________________________________
Could be that your Dictionary initWithObjectsAndKeys: is not setting up
properly. A NSDictionary will not save to file unless it contains data that
can be archived. Your first step should be to check LogFile1 For instance
your code sample looks like it should write to file, but if you had a
special class, let's say a subclass of NSObject called MyObject. You cannot
write MyObject in your dictionary unless it conforms to the NSCoding
protocol.
Also if you are building inside Xcode, you can specify the path as just @"
LogFile.plist" or something and it will write to the directory of your
current build configuration (debug, release, etc.)
| Related mails | Author | Date |
|---|---|---|
| Julio Bianco | Jun 5, 22:04 | |
| Nick Kreeger | Jun 5, 23:40 | |
| Michael Ash | Jun 6, 01:08 | |
| Julio Bianco | Jun 6, 16:07 | |
| j o a r | Jun 6, 16:17 |






Cocoa mail archive

