简体   繁体   中英

ios file write is not working

I want to write a simple data in file it is not working.

- (void)writeStringToFile:(NSString*)aString {

    // Build the path, and create if needed.
    NSString* filePath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
    NSString* fileName = @"bookmark.json";
    NSString* fileAtPath = [filePath stringByAppendingPathComponent:fileName];
    NSLog(@"%@",fileAtPath);
    if (![[NSFileManager defaultManager] fileExistsAtPath:fileAtPath]) {
        [[NSFileManager defaultManager] createFileAtPath:fileAtPath contents:nil attributes:nil];
    }

    // The main act...
    [[aString dataUsingEncoding:NSUTF8StringEncoding] writeToFile:fileAtPath atomically:YES];
}

You can anyway modify the documents directory of your application.

Check if a File Exists at a Path Or NOT

 NSFileManager *fileManager = [NSFileManager defaultManager];
 //Get documents directory
 NSArray *directoryPaths = NSSearchPathForDirectoriesInDomains
 (NSDocumentDirectory, NSUserDomainMask, YES);
 NSString *documentsDirectoryPath = [directoryPaths objectAtIndex:0];
 if ([fileManager fileExistsAtPath:@""]==YES) {
     NSLog(@"File exists");
 }    

Check if Writable, Readable, and Executable

if ([fileManager isWritableFileAtPath:@"FilePath"]) {
    NSLog(@"isWritable");
 }
 if ([fileManager isReadableFileAtPath:@"FilePath"]) {
    NSLog(@"isReadable");
 }
 if ( [fileManager isExecutableFileAtPath:@"FilePath"]){
    NSLog(@"is Executable");
 }

Try This One Link

Happy Coding (^_^)

Try like this....

  - (void)writeStringToFile:(NSString*)aString {

// Build the path, and create if needed.
NSString* filePath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
NSString* fileName = @"bookmark.json";
NSString* fileAtPath = [filePath stringByAppendingPathComponent:fileName];
NSLog(@"%@",fileAtPath);
if (![[NSFileManager defaultManager] fileExistsAtPath:fileAtPath]) {
    // The main act...
[[aString dataUsingEncoding:NSUTF8StringEncoding] writeToFile:fileAtPath atomically:YES];
}}

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM