ios - 读取文本文件的特定部分

标签 ios cocoa-touch file

我发现了一些与此类似但与 XCode 无关的问题。

我正在创建一个应用程序,在该应用程序中单击一个按钮会生成一个随机报价并将其显示在标签中。

我想做的是有一个包含所有引号的文本文件,然后让我的应用程序从该文件中随机选择一个引号。

问题是我的代码目前读取文件的全部内容。

    textHIYP = [[UITextView alloc] initWithFrame:CGRectMake(0, 0, 320, 460)];
textHIYP.editable = NO;
[self.view addSubview:textHIYP];

textHIYP.text = [NSString stringWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"Quotes" ofType:@"txt"] encoding:NSUTF8StringEncoding error:nil];

我能想到的唯一其他方法是使用 arc4random() 代码来随机化它定位的文件,每个文件包含一个单引号......但是因为我想要超过一百个引号,这个似乎不太理想。

关于如何阅读文本文件的特定行有什么建议吗?

提前致谢!

最佳答案

你可以将整个文件读入一个NSString,然后用componentsSeparatedByString:@"\n"将它拆分成一个数组,保留它的内存,并返回一个需要时数组的随机元素。如果只有数百(而不是数百万)行,使用的额外内存应该不是问题。

关于ios - 读取文本文件的特定部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20016402/

相关文章:

ios - 如何从消息扩展创建 GIF 贴纸

ios - CNContactViewController - 更改取消和完成按钮的颜色

ios - 通过 NSData 将 NSString 编码为 NSInputStream 后字节发生变化

ios - 有什么方法可以在没有安装 Cocoa-pods 的情况下使用 Pod 文件运行项目?

ios - 始终在 UISearchBar 中显示取消按钮

Python 使用名称和分数对文件进行排序

objective-c - 牢房?自定义 IOS TableView 单元格

iphone - drawRect 中的多个 CGContextRef

r - 如何在本地硬盘上将 Shiny 的 react 性数据框作为 csv 存储并附加新条目

java - 使用 RandomAccessFile 在 Java 中清除文件内容