如何检查文件中的下一行是否为空?

时间:2016-04-14 14:18:19

标签: ios swift

我有这段代码可以逐行读取我的文件:

 data = try String(contentsOfFile: localFilePath as String,
                              encoding: NSASCIIStringEncoding)

 let myStrings = data.componentsSeparatedByCharactersInSet(NSCharacterSet.newlineCharacterSet())


 array = myStrings[0].characters.split(){$0 == ","}.flatMap{
        (Int(String.init($0).stringByTrimmingCharactersInSet(NSCharacterSet.whitespaceCharacterSet())))}

这里我正在阅读文件的第一行,并将该行中的数字转换为[Int]

现在我想检查文件的下一行是否有任何数字/字母,但是当我尝试这样做时:myStrings[1]它正确地给了我Index out of range因为下一行是空的。

我的问题是,有没有办法检查文件中的下一行是否有任何数据,而不会出现此错误?

2 个答案:

答案 0 :(得分:0)

如果您只执行myStrings [1]并且它已经显示“索引超出范围”,则可能是那里没有字符串(甚至不是空字符串)。您应该检查您尝试访问的字符串索引(在此示例中为1)是否不在myStrings数组的范围之外。 另一方面,如果您实际上稍后收到错误并且有一个可能为空的字符串,则可以使用isEmpty()来检查该错误。

答案 1 :(得分:0)

使用count阵列上的myStrings属性,首先检查您拥有的行数。这会告诉您数组包含多少项。