【问题标题】:How to read a random line from a textfile?如何从文本文件中读取随机行?
【发布时间】:2011-02-24 09:07:04
【问题描述】:
我是 Xcode 和 Objective-C 的绝对初学者,嘿,这听起来像是我正在阅读的 Rory Lewis 的书!我正在尝试为IOS编写一个简单的问题游戏。
这是我的第一个应用程序,除了几个版本“Hello world” ;-) 我已经阅读了大量的论坛,但我还没有找到我想要的。
所以我想从纯文本文件中读出一个随机行,假设“file.txt”包含大约 500 行。当我按下按钮时,我希望应用程序从 file.txt 中获取随机行并将其显示在屏幕上。我尝试了很多东西,我觉得我只是在黑暗中摸索!希望有人能指出我正确的方向(请提供一个基本的方向;-)。
【问题讨论】:
标签:
iphone
file
text
random
【解决方案1】:
这样的事情应该可以工作:
#include <stdlib.h>
#include <time.h>
NSString *file = [[NSBundle mainBundle] pathForResource:@"file" ofType:@"txt"];
NSString *fileContents = [NSString stringWithContentsOfFile:file];
NSArray *lines = [fileContents componentsSeparatedByString:@"\n"];
/* initialize random seed: */
srand ( time(NULL) );
/* generate random number: */
int index = rand() % [lines count];
NSString *string = [lines objectAtIndex:index];