2011-04-08 126 views
1

我正在将UTF-8编码的文本文件加载到数组中。在文本文件的几个地方有空行,没有空格。为什么isEqualToString不按我认为应该的方式工作?

在这种条件:

tempstring = [array objectAtIndex:index]; 
if([tempstring isEqualToString:@""] == NO) { 
    // do something 
} 

结果总是NO。我NSLog的字符串,但我没有看到空白行上的控制台中的任何字符。 NSLog还显示长度为1的空白行。

我该如何纠正此条件才能正常工作?

回答

-1

tempstring = [array objectAtIndex:index];

如果([tempstring isEqualToString:@ “”] == FALSE & & tempstring =零!){

// do something 

}

0

空白行通常不是完全空白 - 即使没有别的东西,它们在最后仍然有换行符。试试这个:

tempstring = [array objectAtIndex:index]; 
if([tempstring isEqualToString:@"\n"] == NO) { 
    // do something 
} 
+0

这不能在我的测试中工作 – TigerCoding 2011-04-08 12:29:27

+0

如果失败,但剥离空白的工作,这意味着你没有空行 - 你有行中有一个或多个空白字符。 – 2011-04-08 12:30:42

+0

奇怪的是,空白不会显示在xcode的文本文件中。 :|但是你说什么是有道理的。它可以在加载到数组中时添加吗? array = [self loadTextFileNamed:filename]; – TigerCoding 2011-04-08 12:41:59

相关问题