使用Swift从文本文件读取数据
例如,我有一个文本文件中的一些项目列表。我想一个接一个地读数据。我怎样才能在斯威夫特做到这一点?我找到了使用Swift从文本文件读取数据,swift,Swift,例如,我有一个文本文件中的一些项目列表。我想一个接一个地读数据。我怎样才能在斯威夫特做到这一点?我找到了NSString.stringWithContentsOfFile(path),但它读取整个文件。在C++中,我使用IFFSUW进行处理。例如: ifstream fd(fileName); string code, type, title; int price, date; getline(fd, title); while (!fd.eof()) {
NSString.stringWithContentsOfFile(path)
,但它读取整个文件。在C++中,我使用IFFSUW进行处理。例如:
ifstream fd(fileName);
string code, type, title;
int price, date;
getline(fd, title);
while (!fd.eof()) {
getline(fd, code, ',');
fd >> ws;
getline(fd, type, ',');
fd >> ws;
fd >> date;
fd.ignore();
fd >> price;
fd.ignore();
}
fd.close();
和示例文本文件:
Title of List
K123, document, 1994, 12500
S156, photo, 2006, 7000
R421, book, 1998, 6000
我怎样才能用这样的Swift阅读文件,并一个接一个地在其中输入单词 读取整个文件,然后将字符串解析为字符/单词数组是否合适?如果是,请考虑使用< /P>
func组件由字符串(u分隔符:字符串)->[AnyObject]
如果您知道每个标记之间有空格、逗号或任何分隔符,这可能是一个可行的解决方案。如果这不可接受,请在下面发表评论。如果我正确阅读了问题,提问者不想这样做。相反,他们希望一次读取一点文件。可以使用,但对于大文件来说效率很低。有时我可能想读列表中的第一行“x”,这样对那些情况来说就没有效率了。对,我只是给OP一个解决办法,因为我不确定他或她在用这些数据做什么。如果他们只是想对每个用逗号分隔的标记执行一个操作,那么可以解析整个内容,然后遍历数组。当然,这可能会更慢。编辑:刚刚看到你的评论。是的,这绝对不是一个好的解决方案,那么哈。看看类参考。这可能是一个起点,对不起,我没有更多的信息,祝你好运!这可能很有趣:,即使它只是部分解决了你的问题此外,还可以从Swift调用BSD库函数
getline()
和getdelim()
。getdelim()
可能对这一点很有用。我试试看。