您好,我正在制作一个从键盘获取输入的程序,我想知道是否有任何方法可以从键盘获取输入并将其存储在NSString
object.
如果您将其作为命令行应用程序执行此操作,那么这是我上周编写的代码,用于从命令提示符中获取一行(我将其设为NSString
类别):
+ (NSString *) stringFromStandardInDelimitedByCharactersInSet:(NSCharacterSet *)delimiters {
NSMutableString * string = [NSMutableString string];
unichar input = '\0';
while (input = getchar()) {
if ([delimiters characterIsMember:input]) { break; }
[string appendFormat:@"%C", input];
}
return string;
}
然后我会像这样使用它:
NSString * input = [NSString stringFromStandardInDelimitedByCharactersInSet:[NSCharacterSet newlineCharacterSet]];
它不能很好地处理 unicode 字符(尽管使用了 unichar),因为 getchar() 只返回常规字符。然而,对于基本的命令行文本输入,它的效果非常好。但是,请注意,这将阻塞执行它的线程(因为 getchar() 是阻塞调用)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)