NSString字符串问题,如下
一:时间戳转化为字符串 字符串转化为日期
🌰例1、 从服务器段获取到的字符串转化为时间如:转化1416882712000
```//网络请求获取的数据 gradeDate
NSString *time = gradeDate;
NSInteger num = [time integerValue]/1000;(重点)
NSDateFormatter *formatter = [[NSDateFormatteralloc]init];
[formatter setDateStyle:NSDateFormatterMediumStyle];
[formatter setTimeStyle:NSDateFormatterShortStyle];
[formatter setDateFormat:@YYYY-MM-dd];
NSDate*confromTimesp = [NSDatedateWithTimeIntervalSince1970:num];NSString*confromTimespStr =
[formatterstringFromDate:confromTimesp];
nslog(@"%@", confromTimespStr);
//转化之后结果为:2014-11-25```
🌰例2、将一个字符串转化为任意的日期时间格式(如“ 20110826134106”装化2011年08月26日 13时41分06秒)下面列举两种类型:
NSDateFormatter *inputFormatter= [[[NSDateFormatter alloc] init] autorelease];
[inputFormatter setLocale:[[[NSLocale alloc] initWithLocaleIdentifier:@en_US] autorelease]];
[inputFormatter setDateFormat:@yyyyMMddHHmmss];
NSDate*inputDate = [inputFormatter dateFromString:string];
NSLog(@date= %@, inputDate);
NSDateFormatter *outputFormatter= [[[NSDateFormatter alloc] init] autorelease];
[outputFormatter setLocale:[NSLocale currentLocale]];
[outputFormatter setDateFormat:@yyyy年MM月dd日 HH时mm分ss秒];
NSString *str= [outputFormatter stringFromDate:inputDate];
NSLog(@testDate:%@,str);
//testDate:2011年08月26日 13时41分06秒
二:NSSting 字符串截取 字符串包含某个字符 字符串encoding
🌰例1、字符串截取后四位
NSString *str2 = [carNo substringFromIndex:carNo.length - 4];//截取掉下标4之后的字符串
self.cardLastNumLB.text = [NSString stringWithFormat:@"尾号: %@",str2];
🌰例2、判断字符串中是否含有某个字符串,例如
[responseObject[@"err_msg"] rangeOfString:@"登录"].location != NSNotFound
🌰例3、对字符串encoding
[str stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
三:NSSting 与NSData 相互转化
🌰字符串与JSON之间的转化
方法一:
NSData *responseData = error_data;
NSString * receive = [[NSString alloc]initWithData:responseData encoding:NSUTF8StringEncoding ];
🌰字符串再生成NSData
NSData *data = [receive dataUsingEncoding:NSUTF8StringEncoding];
NSDictionary *dict = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableLeaves error:nil];
四: NSString与Json相互转化
🌰JSON转NSString
- (NSString*)dictionaryToJson:(NSDictionary *)dic
{
NSError *parseError = nil;
NSData *jsonData = [NSJSONSerialization dataWithJSONObject:dic
options:NSJSONWritingPrettyPrinted
error:&parseError];
return [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];
}
🌰NSString转JSON
-(NSDictionary *)dictionaryWithJsonString:(NSString *)jsonString {
if (jsonString == nil) {
return nil;
}
NSData *jsonData = [jsonString dataUsingEncoding:NSUTF8StringEncoding];
NSError *err;
NSDictionary *dic = [NSJSONSerialization JSONObjectWithData:jsonData options:NSJSONReadingMutableContainers error:&err];
if(err) {
NSLog(@"json解析失败:%@",err);
return nil;
}
return dic;
}
🌰而如果你用了SBJson的话
NSDictionary *dic = @{@"userId":[LoginUser sharedLoginUser].userID,@"nickName":[LoginUser sharedLoginUser].userName,@"headImgUrl":[LoginUser sharedLoginUser].userIcon,@"videoId":myVideoID,@"praiseNum":@"1"};
NSString *str=[dic JSONRepresentation];
这句话可以将dic直接转换为NSString
//encode
NSString *nickName= @"二哈";
NSString *encode = [nickName stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
持续更新中。。。🍎🍊🍐