如何将我的NSInteger放入我的NSString stringWithFormat:
我的代码:
-(IBAction)main:(id)sender
{
NSAppleScript *script = [[NSAppleScript alloc] initWithSource:@"return the clipboard"];
NSAppleEventDescriptor *clipboardTXT = [[script executeAndReturnError:nil]stringValue];
NSInteger *length = [clipboardTXT.stringValue length];
NSString *mystring = [NSString stringWithFormat:@"%", length];
[mybutton setTitle:mystring];
}
P.S。我试过this,但它对我不起作用。
答案 0 :(得分:2)
使用%d
说明符。
- (IBAction)main:(id)sender
{
NSAppleScript *script = [[NSAppleScript alloc] initWithSource:@"return the clipboard"];
NSAppleEventDescriptor *clipboardTXT = [script executeAndReturnError:nil];
NSInteger length = [[clipboardTXT stringValue] length];
NSString *mystring = [NSString stringWithFormat:@"%d", length];
[mybutton setTitle:mystring];
}
修改强>
你的问题与你提出的问题完全不同。你为什么不第一次包含错误信息?浪费时间......
它显然指出问题必须在您的stringValue
电话周围。如果您使用Google搜索它,您肯定会发现此错误消息表示您要发送stringValue
的对象,但没有这样的方法。 executeAndReturnError
会返回NSAppleEventDescriptor
个实例。然后,您拨打stringValue
,这将返回NSString
,而不是NSAppleEventDescriptor
。之后,您正在向stringValue
发送NSString
消息(它没有这样的方法)。请参阅我编辑的代码。
答案 1 :(得分:1)
2件事,你想使用%d
说明符,你需要删除长度声明中的*
NSInteger length = [clipboardTXT.stringValue length];
NSString *mystring = [NSString stringWithFormat:@"%d", length];