JSON转换类(上)

1、过滤特殊字符

private static string String2Json(String s)

{

StringBuilder sb = new StringBuilder();

for (int i = 0; i < s.Length; i++)

{

char c = s.ToCharArray()[i];

switch (c)

{

case '\"':

sb.Append("\\\""); break;

case '\\':

sb.Append("\\\\"); break;

case '/':

sb.Append("\\/"); break;

case '\b':

sb.Append("\\b"); break;

case '\f':

sb.Append("\\f"); break;

case '\n':

sb.Append("\\n"); break;

case '\r':

sb.Append("\\r"); break;

case '\t':

sb.Append("\\t"); break;

default:

sb.Append(c); break;

}

}

return sb.ToString();

}

2、格式化字符型、日期型、布尔型

private static string StringFormat(string str, Type type)

{

if (type == typeof(string))

{

str = String2Json(str);

str = "\"" + str + "\"";

}

else if (type == typeof(DateTime))

{

str = "\"" + str + "\"";

}

else if (type == typeof(bool))

{

str = str.ToLower();

}

else if (type != typeof(string) && string.IsNullOrEmpty(str))

{

str = "\"" + str + "\"";

}

return str;

}

相关推荐
ILYT NCTR6 分钟前
【springboot】Spring 官方抛弃了 Java 8!新idea如何创建java8项目
java·spring boot·spring
weixin_425023007 分钟前
PG JSONB 对应 Java 字段 + MyBatis-Plus 完整实战
java·开发语言·mybatis
weixin_4434785121 分钟前
Flutter第三方常用组件包之路由管理
前端·javascript·flutter
武藤一雄25 分钟前
C# 异步回调与等待机制
前端·microsoft·设计模式·微软·c#·.netcore
啥都不懂的小小白32 分钟前
前端CSS入门详解
前端·css
不早睡不改名@44 分钟前
Netty源码分析---Reactor线程模型深度解析(二)
java·网络·笔记·学习·netty
子非鱼@Itfuture1 小时前
`<T> T execute(...)` 泛型方法 VS `TaskExecutor<T>` 泛型接口对比分析
java·开发语言
2601_949816161 小时前
spring.profiles.active和spring.profiles.include的使用及区别说明
java·后端·spring
林恒smileZAZ1 小时前
前端大屏适配方案:rem、vw/vh、scale 到底选哪个?
开发语言·前端·css·css3
疯狂成瘾者1 小时前
接口规范设计:返回体 + 错误码 + 异常处理
java·状态模式