objective-c - 使用 [NSBundle mainBundle] 写入文件失败

标签 objective-c cocoa-touch ios file-io

我正在尝试从一个文件中获取内容并将其写入另一个文件。我读得很好,但我无法将它写入另一个文件。

我有一个单词数据库。我想根据字母的数量将单词分成不同的文件。所有四个字母的单词都放在一个文件中,依此类推。我在我的资源中添加了一个名为“4letter”的 txt 文件,以下是我的代码:

NSError *error;

//READ
NSString *dbFile = [[NSBundle mainBundle] pathForResource:@"words" ofType:@"txt"];
NSString *test = [NSString stringWithContentsOfFile:dbFile encoding:NSUTF8StringEncoding error:&error];

//convert from string to array
NSArray *lines = [test componentsSeparatedByString:@"\n"]; 

NSFileHandle *logFile = nil;
logFile = [NSFileHandle fileHandleForWritingAtPath:[[NSBundle mainBundle] pathForResource:@"4letter" ofType:@"txt"]];

//Test if write works
for (int i=0; i<5; i++) 
{
    NSString *randomAnagram = [[lines objectAtIndex:i] lowercaseString];
    [logFile writeData: [randomAnagram dataUsingEncoding: NSNEXTSTEPStringEncoding]];
}

最佳答案

在 iOS 中,您无法写入应用程序包中的文件——整个包都是只读的。请改用 Documents 文件夹的路径。

关于objective-c - 使用 [NSBundle mainBundle] 写入文件失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5853014/

相关文章:

objective-c - AFIncrementalStore 还在维护吗?

ios - UITableView :reloadSectionIndexTitles animated correct way

iphone - 为什么 ABPersonViewController 除了名称之外不显示任何属性?

ios - 在我点击我的通知操作后,我的 URL 没有运行。我该怎么办?

iphone - 通过另一个实体属性设置核心数据实体属性

ios - 单击 UITextField 后应用程序卡住

objective-c - Objective-C : Memory Allocation on stack vs. 堆

iphone - UIPickerView 编程示例?

ios - 警告 : Attempt to present * whose view is not in the window hierarchy

ios - UIBarButtonItem 色调颜色 iOS4