我是Objective-C的新手,我不知道为什么这段代码不起作用:
NSMutableDictionary *bookmarks = [NSMutableDictionary dictionaryWithCapacity:(NSUInteger) 4];
[bookmarks setObject:@"Stanford University" forKey:[NSURL URLWithString:(NSString *) @"http://www.stanford.edu"]];
[bookmarks setObject:@"Apple" forKey:[NSURL URLWithString:(NSString *) @"http://www.apple.com"]];
[bookmarks setObject:@"Berkeley" forKey:[NSURL URLWithString:(NSString *) @"http://www.berkeley.edu"]];
[bookmarks setObject:@"CS193P" forKey:[NSURL URLWithString:(NSString *) @"http://cs193p.stanford.edu"]];
NSEnumerator *browser = [bookmarks keyEnumerator];
id each;
NSURL *url;
while ((each = [browser nextObject])) {
url = [browser valueForKey:(NSString *)each];
NSLog(@"%@", [url absoluteURL]);
}
Run Code Online (Sandbox Code Playgroud)
我得到的错误是:
2009-06-29 11:25:22.844 WhatATool[2102:10b] *** -[NSURL length]: unrecognized selector sent to instance 0x1072c0
2009-06-29 11:25:22.845 WhatATool[2102:10b] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', …Run Code Online (Sandbox Code Playgroud) 我是从C#来到Objective-C而没有任何C语言的中间知识.(是的,是的,我需要在某些时候学习C并且我完全打算这样做.)在Apple的证书,密钥和信任服务编程指南中,那里是以下代码:
static const UInt8 publicKeyIdentifier[] = "com.apple.sample.publickey\0";
static const UInt8 privateKeyIdentifier[] = "com.apple.sample.privatekey\0";
Run Code Online (Sandbox Code Playgroud)
我有一个NSString我想在这里使用的标识符,对于我的生活,我无法弄清楚如何将其纳入这个数据结构.通过谷歌搜索也没有结果.我看着NSString类参考,看着UTF8String和getCharacters方法,但我不能让产品进入结构.
我错过了什么简单易行的技巧?
我有一个字典对象,我正在从中提取数据.该字段应该是一个字符串字段,但有时它包含的所有字符都是一个数字.我使用以下信息获取信息:
NSString *post = [[temp objectAtIndex:i] valueForKey:@"POSTDESCRIPTION"];
Run Code Online (Sandbox Code Playgroud)
所以它进入了一个字符串对象.但是,当我尝试通过以下方式将其分配给单元格的文本时:
cell.textLabel.text = post;
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
'NSInvalidArgumentException', reason: '*** -[NSDecimalNumber isEqualToString:]: unrecognized selector sent to instance 0x4106a80'
2009-10-20 13:33:46.563
Run Code Online (Sandbox Code Playgroud)
我尝试用以下方法进行投射无效:
NSString *post = [[[temp objectAtIndex:i] valueForKey:@"POSTDESCRIPTION"] stringValue];
NSString *post = (NSString *)[[temp objectAtIndex:i] valueForKey:@"POSTDESCRIPTION"];
cell.textLabel.text = [post stringValue];
cell.textLabel.text = (NSSting *)post;
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
我有一个查询字符串:a=1&b=2&c[1]=3&c[2]=4等...
我想要一个的NSDictionary那里a => 1,b => 2, c => [3,4].请注意,c的值是一个数组.它还应该能够处理类似c[1][2]=5数组的操作c => [[5]].
当然我可以通过拆分&和自己来做=,但是其他情况如数组和数组数组呢.我想要一个来自POST请求queryString 的结构化 NSDictionary,并且如果已经存在则不想重写轮子.
是否有任何类/方法,通过Apple或第三方,将查询字符串解析为结构化的NSDictionary?
假设我有一个字符串"167282".如何检查字符串是否包含"128"?是否有任何条款可以知道匹配第一个字符串的第二个字符串的百分比?(如果第二个字符串的所有字符都存在于第一个字符串中.)请提前帮助和thanx.
我有一个类用于在数组中设置对象.在这个类中,我有一个自定义的"initWithDictionary",我解析一个JSON字典.但是,正如我遇到的那样NSNull,这会导致我的应用崩溃.为了解决这个问题,我设置了一个处理异常的类,所以当一个字符串是NSNull,它将替换它@"".或-1表示整数.
这是我的NullExtensions类:
@interface NSNull (valueExtensions)
-(int)intValue;
-(NSString *)stringValue;
@end
@implementation NSNull (valueExtensions)
-(int)intValue {
return -1;
}
-(NSString*)stringValue {
return @"";
}
@end
Run Code Online (Sandbox Code Playgroud)
但是,在我的initWithDictionary方法中,以下代码崩溃了我的应用程序:
self.bookTitle = [[parsedDictionary objectForKey:@"book_title"] stringValue];
Run Code Online (Sandbox Code Playgroud)
无论解析字典中的对象是否NSNull包含有效字符串,它都不起作用.只有我执行以下操作(并且字符串不为null):
self.bookTitle = [parsedDictionary objectForKey:@"book_title"];
Run Code Online (Sandbox Code Playgroud)
stringValue在这种情况下是不正确的?如果是这样,我如何正确使用它才能设置正确的NSNull替换?
谢谢
我们如何在objective-c中显示百分比字符?
我用这个:
[NSString localizedStringWithFormat:@"%.2f %", percentageQs]
Run Code Online (Sandbox Code Playgroud)
但由于某种原因,它不承认%.以为我可以用它来逃避它\但我错了.
我正在尝试将遗留C++程序转换为objective-C.该程序需要256个可能的ASCII字符数组(每个字符8位).我正在尝试使用这种NSString方法initWithBytes:length:encoding:.不幸的是,当编码如下所示时,它会崩溃(尽管它会编译).
NSString* charasstring[256];
unsigned char char00;
int temp00;
for (temp00 = 0; temp00 <= 255; ++temp00)
{
char00 = (unsigned char)temp00;
[charasstring[temp00] initWithBytes:&char00 length:1 encoding:NSASCIIStringEncoding];
}
Run Code Online (Sandbox Code Playgroud)
我错过了什么?
我有多个NSStrings,我希望将它们合并到另一个,这是我的代码到目前为止...
NSString *newURL = [_parameters objectForKey:@"url"];
NSString *emailBody = @"Hey!<br>I just snipped my long url with <a href=\"...\">My Cool App for iPhone</a> in just a few seconds!<p><b><a href=\""+newURL+@"\">"+newURL+@"</a></b></p>";
Run Code Online (Sandbox Code Playgroud) 我有相同的问题此问题在这里.
我甚至想编码与他相同的信息(这是asp.net的日期/时间)......
当我尝试添加反斜杠时,我得到了两个反斜杠,因为我使用了\.
上面线程中的每个人声称这是NSLog的一个问题,并且NSString确实将其\\视为一个\.我已经通过使用数据包嗅探器来检查我正在发送到网络服务器的数据包,我可以确认它正在传输双反斜杠而不是单个反斜杠.
有谁知道如何在NSString中添加反斜杠?
nsstring ×10
objective-c ×9
iphone ×5
cocoa ×3
nsdictionary ×2
backslash ×1
casting ×1
cocoa-touch ×1
constants ×1
debugging ×1
escaping ×1
merge ×1
nsurl ×1
null ×1
string ×1