Unichar ve char arasında biraz kafam karışık. Unichar'ın char's'una benzer davranabilir miyim?Objective-C: unichar vs. char
-(BOOL)isNewLine:(unichar)c {
if(c == '\n')
return YES;
else
return NO;
}
Unichar ve char arasında biraz kafam karışık. Unichar'ın char's'una benzer davranabilir miyim?Objective-C: unichar vs. char
-(BOOL)isNewLine:(unichar)c {
if(c == '\n')
return YES;
else
return NO;
}
Evet, unichar içten unsigned short
, yani anlamlı bir char
ile karşılaştırabilirsiniz (ikincisi ASCII ise, ama bu '\n'
için çalışıyor):
Örneğin, ben bunu yapabilirsiniz.
Satır sonlarınızın biçimini bildiğinize dikkat edin; Unix (ve modern Mac) kullanılıyor \ n, ancak Windows \ r \ n kullanıyor ve klasik Mac kullanıyor \ r. unichars karşılaştırılırken
kullanılarak yerine düşünün:
if ([[NSCharacterSet newlineCharacterSet] characterIsMember:unicharCharacter])
{
//any type of newline
}
else
{
//etc
}
Sonra satırbaşıyla her türlü yakalamak ve kolayca (whitespaceAndNewlineCharacterSet gibi) farklı karakter setleri maç için değiştirebileceğiniz kodu bulunur.
Bu, unichars ile büyük bir başucudur.
Teşekkürler. Ben karşılaştırmak olabilir NSNewlineCharacterSet üretmek için statik bir yöntemi olan bir sınıf, NSCharacterSet, buldum. – LeeMobile