NSString 各种转化

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];

持续更新中。。。🍎🍊🍐

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容