//
// NSString+HXAddtions.h
// HXWeb
//
// Created by hufeng on 12-2-13.
// Copyright (c) 2012年 __MyCompanyName__. All rights reserved.
//
#import <Foundation/Foundation.h>
@interface NSString (HXAddtions)
+(NSString *) jsonStringWithDictionary:(NSDictionary *)dictionary;
+(NSString *) jsonStringWithArray:(NSArray *)array;
+(NSString *) jsonStringWithString:(NSString *) string;
+(NSString *) jsonStringWithObject:(id) object;
+(void) jsonTest;
@end
//
// NSString+HXAddtions.m
// HXWeb
//
// Created by hufeng on 12-2-13.
// Copyright (c) 2012年 __MyCompanyName__. All rights reserved.
//
#import "NSString+HXAddtions.h"
@implementation NSString (HXAddtions)
+(void)jsonTest{
//test
NSDictionary *dictionary1 = [NSDictionary dictionaryWithObjectsAndKeys:
@"阿三\"\n11",@"name",
@"18",@"age",
nil];
NSDictionary *dictionary2 = [NSDictionary dictionaryWithObjectsAndKeys:
@"阿四",@"name",
@"20",@"age",
nil];
NSArray *array = [NSArray arrayWithObjects:dictionary1,dictionary2,
nil];
NSDictionary *dictionary3 = [NSDictionary dictionaryWithObjectsAndKeys:
@"李\na",@"name",
@"29",@"age",
nil];
NSDictionary *dictionary = [NSDictionary dictionaryWithObjectsAndKeys:
@"string",@"string",
array,@"array",
dictionary3,@"dictionary",
nil];
NSLog(@"dictionary:%@",dictionary);
NSString *jsonString = [NSString jsonStringWithObject:dictionary];
NSLog(@"dictionary jsonString:%@",jsonString);
NSLog(@"%@",[NSDictionary dictionaryWithData:[jsonString dataUsingEncoding:NSUTF8StringEncoding]]);
}
+(NSString *) jsonStringWithString:(NSString *) string{
return [NSString stringWithFormat:@"\"%@\"",
[[string stringByReplacingOccurrencesOfString:@"\n" withString:@"\\n"] stringByReplacingOccurrencesOfString:@"\""
withString:@"\\\""]
];
}
+(NSString *) jsonStringWithArray:(NSArray *)array{
NSMutableString *reString = [NSMutableString string];
[reString appendString:@"["];
NSMutableArray *values = [NSMutableArray array];
for (id valueObj
in array) {
NSString *value = [NSString jsonStringWithObject:valueObj];
if (value) {
[values addObject:[NSString stringWithFormat:@"%@",value]];
}
}
[reString appendFormat:@"%@",[values componentsJoinedByString:@","]];
[reString appendString:@"]"];
return reString;
}
+(NSString *) jsonStringWithDictionary:(NSDictionary *)dictionary{
NSArray *keys = [dictionary allKeys];
NSMutableString *reString = [NSMutableString string];
[reString appendString:@"{"];
NSMutableArray *keyValues = [NSMutableArray array];
for (int i=0; i<[keys count]; i++) {
NSString *name = [keys objectAtIndex:i];
id valueObj = [dictionary objectForKey:name];
NSString *value = [NSString jsonStringWithObject:valueObj];
if (value) {
[keyValues addObject:[NSString stringWithFormat:@"\"%@\":%@",name,value]];
}
}
[reString appendFormat:@"%@",[keyValues componentsJoinedByString:@","]];
[reString appendString:@"}"];
return reString;
}
+(NSString *) jsonStringWithObject:(id) object{
NSString *value =
nil;
if (!object) {
return value;
}
if ([object isKindOfClass:[NSString class]]) {
value = [NSString jsonStringWithString:object];
}else
if([object isKindOfClass:[NSDictionary class]]){
value = [NSString jsonStringWithDictionary:object];
}else
if([object isKindOfClass:[NSArray class]]){
value = [NSString jsonStringWithArray:object];
}
return value;
}
@end
分享到:
相关推荐
NSString NSArray NSDictionary 方法名释义
Object C 字符串和数组NSString NSArray操作
IOS 开发之NSDictionary转换成JSON字符串 普通情况下,你可能会用一个NSDictionary的分类去做NSDictionary转JSON,如下代码: NSError *error; NSData *jsonData = [NSJSONSerialization dataWithJSONObject:self ...
常用NSString字符串操作,主要有字符串截取 读取文件内容等等
把NSDictionary类型的数据转换为json,这个目前没找到ios自带方法,引用了第三方库JSONKit,就两个文件,json.h+.m.导入工程即可 下面就是代码了,仔细看哦,一晃就过了啊 NSString *returnString=[dic JSONString];...
NSString *nsstring = @”这是个NSString字符串, nsstring”; NSLog(@”cString字符串–>%s “,cString); NSLog(@”NSString字符串–>%@”,nsstring); const char *cString2 = [nsstring UTF8String]; NSString *...
iOS,对nsstring的扩展,实现了判断字符串是否为空。。
NSString类提供了丰富的方法和属性,用于处理字符串的创建、操作和格式化。 以下是Objective-C中创建和操作字符串的一些常见方法: 创建字符串: NSString *str1 = @"Hello, World!"; // 使用@"..."语法创建字符串...
消息包编码器 ... 这意味着当您使用 MsgPackUnarchiver 解码字符串/数组/字典时,它将创建 NSString/NSArray/NSDictionary 实例,而不是给定子类的实例。 稳定 有单元测试证明代码有效(至少在给定的
FYJsonObject将json字符串解析出来的dictionary自动解析为对应的NSObject对象,可用于通用json字符串到NSObject的解析支持类型嵌套支持NSArray,NSDictionary方便的api实现encoder和decoderAPI@protocol ...
操作系统反射套件OSReflectionKit 是适用于 iOS 和 Mac OS X 的轻量级对象反射库,它允许您从简单的对象或 JSON 字符串实例化对象。 例如,从字典甚至直接从 JSON 字符串实例化一个对象是多么容易:从 JSON 字符串...
架构: 使用runtime和Sqlite实现NSObject扩展类YUDBModel,直接实现(json反序列化对象-对象增删改查数据库-对象序列化) 易用: 无需继承,直接实现序列化、反序列化、一行代码操作数据库 稳定: 耦合度低,容错率高,...
字符串 对字符串的一些操作 大家可以看看的啊也许会很有用的
MGFormatter MGFormatter可以使用自定义的关键字颜色和字体在视图中格式化JSON或HTML代码。例子要运行示例项目,请克隆存储库,然后首先从Example目录运行pod install 。要求iOS 8.0以上Xcode 9.0以上用法只需创建一...
// 如果json有嵌套,即value里有array、object,如果再使用objectFromJSONString,程序可能会报错(测试结果表明: 使用由网络或得到的php/json_encode生成的json时会报错,但使用NSString定义的json字符串时,解析...
1.创建字符串 (1)常量字符串 代码如下: NSString *string = @”i am an iOSDevTip!”; (2)常用创建方法 代码如下: NSString *string = [[NSString alloc] init]; string = @”i am an iOSDevTip too!”; (3)...
JS to Objc: self.bridge = [[MGXWebBridge alloc]initWithWebView:self.webView]... //support param type: NSString , NSArray, NSDictionary [self.bridge invokeJSFunc:@"ajaxResult.list" params:param];
NSString-验证 NSString 上用于检查有效性和转换字符串的类别
Foundation框架:学习Foundation框架中提供的常用类,如NSString、NSArray、NSDictionary等。 Cocoa和UIKit:了解这两个框架提供的界面开发相关类和接口。 协议与代理:理解协议(Protocol)和代理(Delegate)设计模式...
判断字符串是否为空,判断字符串是否为空,判断字符串是否为空