因此,我編寫了一堆用於寫入的對象,但我遇到了文件管理問題。我似乎無法打開現有的文件,或創建一個新的文件。無法創建寫入文件 - iOS
我試着創建一個同名的空文件,或者只是創建一個新文件。它似乎沒有迴應(或者就此事做任何事情)。
編輯所以我在這裏遵循了一些建議,現在我得到了一個不好的訪問崩潰。
這裏就是我得到的路徑:
NSString *documentsDirectory = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
filePath = [documentsDirectory stringByAppendingPathComponent:@"/bucketListData.dat"];
而這裏的修改方法。
-(void) writeFile
{
NSData *encodedObject;
encodedObject = [NSKeyedArchiver archivedDataWithRootObject: bucketItems];
NSFileHandle *file;
file = [NSFileHandle fileHandleForReadingAtPath:filePath];
if(file == nil)
{
NSLog(@"Failed to open a file handle for writing. Attempting to create a file.");
[[NSFileManager defaultManager] createFileAtPath:filePath contents:nil attributes:nil];
file = [NSFileHandle fileHandleForReadingAtPath:filePath];
if(file == nil)
{
NSLog(@"Unable to create new file.");
}
}
[file writeData: encodedObject];
[file closeFile];
}
只有使用[tag:objective-c]標記的問題具體關於語言本身。謝謝! – Undo
編輯從原來表示更改 –