研究了一下发现,其实项document当中去写文件是很简单的,只是进行一个copy就可以了,不过是需要通过bundle当中的文件拷贝到document才可以的。
简直快速的方法,贴代码:
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
NSMutableArray*arrayfilename=[[NSMutableArray alloc] initWithContentsOfFile:[[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@"bookName.plist"]];
//codeguid.txt
/*
[arrayfilename addObject:[NSString stringWithFormat:@"codeguid.txt"]];
[arrayfilename addObject:[NSString stringWithFormat:@"佛本是道.txt"]];
[arrayfilename addObject:[NSString stringWithFormat:@"ReadMe.txt"]];
*/
[arrayfilename addObject:[NSString stringWithFormat:@"offset.plist"]];
BOOL success;
NSFileManager *fileManager = [NSFileManager defaultManager];
NSError *error;
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *writableDBPath;
NSString *defaultDBPath;
for(int i=0;i<[arrayfilename count];i++)
{
//NSLog([arrayfilename objectAtIndex: i ] ) ;
writableDBPath = [documentsDirectory stringByAppendingPathComponent:[arrayfilename objectAtIndex:i]];
success = [fileManager fileExistsAtPath:writableDBPath];
if (success) break;
// The writable database does not exist, so copy the default to the appropriate location.
defaultDBPath = [[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:[arrayfilename objectAtIndex:i]];
success = [fileManager copyItemAtPath:defaultDBPath toPath:writableDBPath error:&error];
if (!success) {
NSLog(@"%@\n" , [arrayfilename objectAtIndex: i ]) ;
NSAssert1(0, @"Failed to create writable database file with message '%@'.", [error localizedDescription]);
NSLog(@"Failed to create writable database file with message '%@'.", [error localizedDescription]);
}
}
[ arrayfilename release];
[pool release];
NSLog(@"end load sources ~ \n " ) ;