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 相关文章推荐
ECMAScript 创建自己的js类库
Nov 22 Javascript
JS读取XML文件示例代码
Nov 15 Javascript
jQuery的:parent选择器定义和用法
Jul 01 Javascript
javascript实现行拖动的方法
May 27 Javascript
js实现字符串和数组之间相互转换操作
Jan 12 Javascript
实例详解jQuery Mockjax 插件模拟 Ajax 请求
Jan 12 Javascript
jQuery插件实现表格隔行变色及鼠标滑过高亮显示效果代码
Feb 25 Javascript
JS实现回到页面顶部动画效果的简单实例
May 24 Javascript
利用JQuery直接调用asp.net后台的简单方法
Oct 27 Javascript
vue如何引入sass全局变量
Jun 28 Javascript
详解如何在vue项目中使用lodop打印插件
Sep 27 Javascript
Nuxt.js 数据双向绑定的实现
Feb 17 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实现将多个文件中的内容合并为新文件的方法示例
2017/06/10 PHP
Laravel修改验证提示信息为中文的示例
2019/10/23 PHP
javascript:void(0)的真正含义实例分析
2008/08/20 Javascript
博客侧边栏模块跟随滚动条滑动固定效果的实现方法(js+jquery等)
2013/03/24 Javascript
js 跳出页面的frameset框架示例介绍
2013/12/23 Javascript
JS中attr和prop属性的区别以及优先选择示例介绍
2014/06/30 Javascript
JS动态添加Table的TR,TD实现方法
2015/01/28 Javascript
CSS javascript 结合实现悬浮固定菜单效果
2015/08/23 Javascript
JavaScript学习笔记之ES6数组方法
2016/03/25 Javascript
深入浅析JavaScript的API设计原则
2016/06/14 Javascript
JavaScript实现点击文本自动定位到下拉框选中操作
2016/06/15 Javascript
JS验证不重复验证码
2017/02/10 Javascript
微信小程序动态添加分享数据
2017/06/14 Javascript
EasyUI的DataGrid每行数据添加操作按钮的实现代码
2017/08/22 Javascript
使用Fullpage插件快速开发整屏翻页的页面
2017/09/13 Javascript
NodeJs实现简单的爬虫功能案例分析
2018/12/05 NodeJs
详解实现一个通用的“划词高亮”在线笔记功能
2019/04/23 Javascript
python中异常捕获方法详解
2017/03/03 Python
Python利用公共键如何对字典列表进行排序详解
2018/05/19 Python
Python获取昨天、今天、明天开始、结束时间戳的方法
2018/06/01 Python
python操作excel的包(openpyxl、xlsxwriter)
2018/06/11 Python
对python实现合并两个排序链表的方法详解
2019/01/23 Python
Python eval的常见错误封装及利用原理详解
2019/03/26 Python
Python2与Python3的区别详解
2020/02/09 Python
python Scrapy框架原理解析
2021/01/04 Python
HTML5注册页面示例代码
2014/03/27 HTML / CSS
用HTML5制作视频拼图的教程
2015/05/13 HTML / CSS
String这个类型的class为何定义成final?
2012/11/13 面试题
大学生毕业自我鉴定
2013/11/06 职场文书
中式面点餐厅创业计划书
2014/01/29 职场文书
教学改革实施方案
2014/03/31 职场文书
卖房协议书样本
2014/10/30 职场文书
留学推荐信怎么写
2015/03/26 职场文书
作息时间调整通知
2015/04/22 职场文书
闪闪的红星观后感
2015/06/08 职场文书
Python使用PyYAML库读写yaml文件的方法
2022/04/06 Python