我一直在找不到如何将JSON数组转换为NSArray.
我有一个php脚本创建一个转换为JSON的数组,然后将其发送并存储到NSString中,如下所示:
[1,2,3,4]
Run Code Online (Sandbox Code Playgroud)
我的问题是我需要把它变成一个整体的NSArray.如何做到这一点?
谢谢!
我有一个可变的字符串数组.对于这个例子,假设其中有2个字符串.
我想要做的操作是获取第一个字符串并将第二个字符串的值赋给它.
我正在尝试这样的事情:
- (void) someAction {
NSMutableArray * array = [[NSMutableArray alloc] initWithObjects: string1, string2, nil];
NSString * firstString = [array objectAtIndex:0];
NSString * secondString = [array objectAtIndex:1];
firstString = secondString;
}
Run Code Online (Sandbox Code Playgroud)
但这种方法似乎不起作用.在我记录这两个字符串后,它们在操作后不会改变.
请指教.
我正在构建一个iphone应用程序,它从地址簿中读取一个电话号码并拨打它(当然还有其他一些东西...... :)).当我从AB加载电话号码时,它们采用以下格式:"1(111)111-1111"使用时不能"拨号":
fullNumber = [NSString stringWithFormat:@"%@%@", @"tel:", phoneNum];
Run Code Online (Sandbox Code Playgroud)
为什么会这样?什么是最好的方法来解决这个问题?我怎么能将电话号码转换成一串数字(没有空格或" - ")?
谢谢.
我有两个单独的字符串,我希望它们显示在同一个标签中.我如何使用Xcode做到这一点.
例如
第一个字符串称为answer1第二个字符串称为answer2
如何让我的标签同时显示
在我的appDelegate使用中LocationManager:
- (void)locationManager: (CLLocationManager *)manager
didUpdateToLocation: (CLLocation *)newLocation
fromLocation:(CLLocation *)oldLocation
{
float latitude = newLocation.coordinate.latitude;
strLatitude = [NSString stringWithFormat:@"%f",latitude];
float longitude = newLocation.coordinate.longitude;
strLongitude = [NSString stringWithFormat:@"%f", longitude];
[self CheckOperation];
}
Run Code Online (Sandbox Code Playgroud)
strLatitude和strLongitude是全局字符串.这绝对没问题.即使在分析应用程序时,我也没有任何内存泄漏.但是当我描述我的应用程序时,我收到了内存泄漏
strLatitude = [NSString stringWithFormat:@"%f",latitude];
Run Code Online (Sandbox Code Playgroud)
和
strLongitude = [NSString stringWithFormat:@"%f", longitude];
Run Code Online (Sandbox Code Playgroud)
的32个字节.
我该如何解决这个问题?
我在NSString课堂上宣布一个类型的ivar .要初始化此ivar的值,我使用以下代码:
NSString *myVar;
-(void)inAnyMethod
{
myVar = [NSString stringWithFormat:@"%@",theValue];
}
Run Code Online (Sandbox Code Playgroud)
我必须释放这个伊娃吗?根据我的理解,这不是我的责任.但在大多数情况下,我以这种方式使用的字符串会导致泄漏.
我错过了什么?
我有一个通过HTTP从Apache服务器获取的字符串:
- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data {
responseString = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
...
Run Code Online (Sandbox Code Playgroud)
我需要将该字符串设为UTF16字符串.我不想把它变成NSData.我需要保持NSString,我需要它在UTF16.我很乐意将它放在一个NSData对象中,如果我可以将其作为UTF16.我现在正在做类似的事情:
[self.returnedData appendData:data];
Run Code Online (Sandbox Code Playgroud)
但是仍然将它转换为UTF8.它可能很简单,我很想念它.但是我没有在Apple文档或这个网站上找到它,而我的Google-Fu也让我失望了.我错过了什么?我怎么做?谢谢你的时间和帮助.
编辑:好的.你和贾斯汀所说的一切都是有道理的,让事情变得更有意义.所以这就是我在做的事情.这条线似乎是正确的,但我想确保我正确理解你.
NSData *resultData = [self. result dataUsingEncoding:NSUTF16LittleEndianStringEncoding];
NSString *resultStr = [[NSString alloc] initWithData:resultData encoding:NSUTF16LittleEndianStringEncoding];
NSString *md5Result = [[NSString stringWithFormat:@"%@",[resultStr MD5]] uppercaseString];
NSLog(@"md5Result = %@",md5Result);
Run Code Online (Sandbox Code Playgroud)
最后一部分就是我在UTF-16之后用字符串做的事情.我有一个类别,使其成为类似于http://blog.blackwhale.at/?tag=hmac的MD5十六进制字符串 再次感谢.我会碰到你们两个,并说这是正确的答案.
我怎样才能以编程方式将其转为:
@"This is any NSString with some blanks"
Run Code Online (Sandbox Code Playgroud)
这个?
@"This+is+any+NSString+with+some+blanks"`
Run Code Online (Sandbox Code Playgroud) 可能重复:
为什么我的比较if语句不起作用?
我试图检查特定设置是否设置为"开"或"关".这是我的代码:
BOOL switchOn;
if ([self loadSettings:@"useLocation"] == @"On"){
switchOn = YES;
NSLog(@"Use Location (Yes): %@",[self loadSettings:@"useLocation"]);
}else{
switchOn = NO;
NSLog(@"Use Location (No): %@",[self loadSettings:@"useLocation"]);
}
NSLog(@"Switch On: %@",switchOn ? @"YES":@"NO");
Run Code Online (Sandbox Code Playgroud)
打印到日志是:
使用位置(否):开
开启:没有
您可以看到,对于"使用位置(否)",该功能不应该返回"开".但它确实回归"开启".我没有正确比较它们吗?
这是我加载默认值的代码:
- (NSString *)loadSettings: (NSString *)key{
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults synchronize]; // this method is optional
// Get the results out
NSString *results = [defaults stringForKey:key];
return results;
}
Run Code Online (Sandbox Code Playgroud)
我回来了NSString,所以我真的不确定问题是什么.在编译之前或之后,我在构建环境中完全没有错误.
我有一个字符串"hai-welcome".
我需要使用' - '分隔符拆分上面的字符串:
mySstring ="hai-welcome"分开:
firstString ="hai"secondString ="welcome.
nsstring ×10
objective-c ×7
ios ×5
iphone ×3
xcode ×2
cocoa ×1
cocoa-touch ×1
json ×1
memory-leaks ×1
nsarray ×1
retain ×1
uilabel ×1
utf-16 ×1