json中换行符的处理方法示例介绍


Posted in Javascript onJune 10, 2014

json作为ajax常用的一种数据类型,经常使用。但如果字段中出现换行符如何处理?

去掉显然不合适。有些字段本来就有换行符,如何能去掉?

测试一下json类的处理,也没有发现。想不到最终的处理确实如此简单:

后台代码把换行符\r\n替换为\\r\\n,前台代码js收到的字符就是\r\n

public static string ConvertFromListTojson<T>(IList<T> list, int total, string columnInfos) where T : class 

{ 

string[] cols = columnInfos.Split(new char[]{','},StringSplitOptions.RemoveEmptyEntries); 

StringBuilder sb = new StringBuilder(300); 

sb.Append("{\"total\":"); 

sb.Append(total); 

sb.Append(",\"rows\":"); 

sb.Append("["); 

foreach (T t in list) 

{ 

sb.Append("{"); 

foreach (string col in cols) 

{ 

string name = "\"{0}\":\"{1}\","; 

string value = getValue<T>(t, col); 

value = value.Replace("\r\n", "\\r\\n"); 

sb.Append(string.Format(name, col, value)); 

} 

if (cols.Length > 0) 

{ 

int length = sb.Length; 

sb.Remove(length - 1, 1); 

} 

sb.Append("},"); 

} 

if (list.Count > 0) 

{ 

int length2 = sb.Length; 

sb.Remove(length2 - 1, 1); 

} 
sb.Append("]"); 

sb.Append("}"); 

return sb.ToString(); 

} 

private static string getValue<T>(T t, string pname) where T : class 

{ 

Type type = t.GetType(); 

PropertyInfo pinfo = type.GetProperty(pname); 

if (pinfo != null) 

{ 

object v = pinfo.GetValue(t, null); 

return v != null ? v.ToString() : ""; 

} 

else 

{ 

throw new Exception("不存在属性" + pname); 

} 

}
Javascript 相关文章推荐
在页面上点击任一链接时触发一个事件的代码
Apr 07 Javascript
JavaScript定时器详解及实例
Aug 01 Javascript
javascript动态添加、修改、删除对象的属性与方法详解
Jan 27 Javascript
jquery实现类似EasyUI的页面布局可改变左右的宽度
Sep 12 Javascript
深入理解JavaScript函数参数(推荐)
Jul 26 Javascript
js的三种继承方式详解
Jan 21 Javascript
jQuery实现的简单悬浮层功能完整实例
Jan 23 Javascript
bootstrap时间插件daterangepicker使用详解
Oct 19 Javascript
bootstrap-Treeview实现级联勾选
Nov 23 Javascript
js实现各浏览器全屏代码实例
Jul 03 Javascript
如何基于javascript实现贪吃蛇游戏
Feb 09 Javascript
JS apply用法总结和使用场景实例分析
Mar 14 Javascript
Jquery焦点与失去焦点示例应用
Jun 10 #Javascript
浅析基于WEB前端页面的页面内容搜索的实现思路
Jun 10 #Javascript
JavaScript中统计Textarea字数并提示还能输入的字符
Jun 10 #Javascript
iframe里的页面禁止右键事件的方法
Jun 10 #Javascript
js类定义函数时用prototype与不用的区别示例介绍
Jun 10 #Javascript
深入探讨JavaScript、JQuery屏蔽网页鼠标右键菜单及禁止选择复制
Jun 10 #Javascript
js换图片效果可进行定时操作
Jun 09 #Javascript
You might like
php+oracle 分页类
2006/10/09 PHP
Zend的Registry机制的使用说明
2013/05/02 PHP
解析PHP无限级分类方法及代码
2013/06/21 PHP
PHPThumb图片处理实例
2014/05/03 PHP
完美解决thinkphp验证码出错无法显示的方法
2014/12/09 PHP
php自定义函数实现二维数组排序功能
2016/07/20 PHP
浅谈php数组array_change_key_case() 函数和array_chunk()函数
2016/10/22 PHP
PHP封装的数据库模型Model类完整示例【基于PDO】
2019/03/14 PHP
PHP 并发场景的几种解决方案
2019/06/14 PHP
laravel 框架结合关联查询 when()用法分析
2019/11/22 PHP
JavaScript 加号(+)运算符号
2009/12/06 Javascript
修复ie8&amp;chrome下window的resize事件多次执行
2011/10/20 Javascript
页面载入结束自动调用js函数示例
2013/09/23 Javascript
ie8本地图片上传预览示例代码
2014/01/12 Javascript
JavaScript中反正弦函数Math.asin()的使用简介
2015/06/14 Javascript
JavaScript中 DOM操作方法小结
2017/04/25 Javascript
js 获取html5的data属性实现方法
2017/07/28 Javascript
微信小程序富文本渲染引擎的详解
2017/09/30 Javascript
Nuxt.js实战详解
2018/01/18 Javascript
当vue路由变化时,改变导航栏的样式方法
2018/08/22 Javascript
js计算最大公约数和最小公倍数代码实例
2019/09/11 Javascript
javascript实现拖拽碰撞检测
2020/03/12 Javascript
[38:51]2014 DOTA2国际邀请赛中国区预选赛 Orenda VS LGD-CDEC
2014/05/22 DOTA
使用python绘制人人网好友关系图示例
2014/04/01 Python
探究Python多进程编程下线程之间变量的共享问题
2015/05/05 Python
用matplotlib画等高线图详解
2017/12/14 Python
详解Python核心编程中的浅拷贝与深拷贝
2018/01/07 Python
详解python selenium 爬取网易云音乐歌单名
2019/03/28 Python
我喜欢你 抖音表白程序python版
2019/04/07 Python
HTML5 解析规则分析
2009/08/14 HTML / CSS
美国汽配连锁巨头Pep Boys官网:轮胎更换、汽车维修服务和汽车零部件
2017/01/14 全球购物
房地产项目策划书
2014/02/05 职场文书
好习惯伴我成长演讲稿
2014/05/21 职场文书
2016教师给学生的毕业寄语
2015/12/04 职场文书
2016思想纪律作风整顿心得体会
2016/01/23 职场文书
MySQL infobright的安装步骤
2021/04/07 MySQL