如何将小写字符转换为大写?
unichar c;
c = [myString characterAtIndex:0];
unichar catchcar = [c lowercaseString];
错误:无效的接收器类型unicar。我知道lowercaseString
是用来隐藏String不是字符。有没有解决方法?如何将小写字符转换为大写?
,你可以做到以下几点:
unichar catchcar = [[myString lowercaseString] characterAtIndex: 0];
如果你只有一个字符,请执行以下操作:
// given unichar c
unichar catchcar = [[[NSString stringWithCharacters:&c length:1] lowercaseString] characterAtIndex: 0];
fileName = [[NSBundle mainBundle] pathForResource:catchar ofType:@“txt”];正在抛出一个错误。我正在将catchar传递给文件名。 – user426795 2010-08-25 15:50:59
@ user426795 - 你为什么要将unichar传递给一个需要NSString的方法?在这种情况下只需使用NSString。 – 2010-08-25 17:18:12
unichar c = [[myString lowercaseString] characterAtIndex:0];
试试这个。
在单个字符上转换大小写的最简单方法是使用C函数tolower
和toupper
。使用从问题的代码示例和重写,会给这个转换为小写:
#import <ctype.h>
unichar catchcar = tolower([myString characterAtIndex:0]);
无需做任何NSString的API复杂。并且不需要首先将整个字符串变成小写字母。
希望这有助于
埃里克
你为什么不只是使字符串小写从中检索字符前? – Neutralizer 2010-08-25 15:35:03
@Ashraf,我做了,它的工作原理。 – user426795 2010-08-25 15:52:07