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 相关文章推荐
JAVASCRIPT函数作用域和提前声明 分享
Aug 22 Javascript
jquery的live使用注意事项
Feb 18 Javascript
js变量提升深入理解
Sep 16 Javascript
JavaScript 总结几个提高性能知识点(推荐)
Feb 20 Javascript
JavaScript中的工厂函数(推荐)
Mar 08 Javascript
JQuery 封装 Ajax 常用方法(推荐)
May 21 jQuery
webpack构建vue项目的详细教程(配置篇)
Jul 17 Javascript
详解vue-cli中的ESlint配置文件eslintrc.js
Sep 25 Javascript
给vue项目添加ESLint的详细步骤
Sep 29 Javascript
vue2 v-model/v-text 中使用过滤器的方法示例
May 09 Javascript
javascript 高级语法之继承的基本使用方法示例
Nov 11 Javascript
JavaScript数组reduce()方法的语法与实例解析
Jul 07 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下操作Linux消息队列完成进程间通信的方法
2010/07/24 PHP
PHP Global变量定义当前页面的全局变量实现探讨
2013/06/05 PHP
PHP命名空间(namespace)的动态访问及使用技巧
2014/08/18 PHP
thinkphp连贯操作实例分析
2014/11/22 PHP
php 解决扫描二维码下载跳转问题
2017/01/13 PHP
thinkPHP框架中layer.js的封装与使用方法示例
2019/01/18 PHP
js可突破windows弹退效果代码
2008/08/09 Javascript
js 图片等比例缩放代码
2010/05/13 Javascript
javascript取消文本选定的实现代码
2010/11/14 Javascript
JQuery中判断一个元素下面是否有内容或者有某个标签的判断代码
2012/02/02 Javascript
将字符串转换成gb2312或者utf-8编码的参数(js版)
2013/04/10 Javascript
javascript将相对路径转绝对路径示例
2014/03/14 Javascript
jQuery使用hide方法隐藏元素自身用法实例
2015/03/30 Javascript
JavaScript函数的一些注意要点小结及js匿名函数
2015/11/10 Javascript
canvas实现爱心和彩虹雨效果
2017/03/09 Javascript
详解vue2路由vue-router配置(懒加载)
2017/04/08 Javascript
Vue 路由切换时页面内容没有重新加载的解决方法
2018/09/01 Javascript
基于AngularJs select绑定数字类型的问题
2018/10/08 Javascript
Layui数据表格之单元格编辑方式
2019/10/26 Javascript
vue中 数字相加为字串转化为数值的例子
2019/11/07 Javascript
Python linecache.getline()读取文件中特定一行的脚本
2008/09/06 Python
python 实现数组list 添加、修改、删除的方法
2018/04/04 Python
解决pyttsx3无法封装的问题
2018/12/24 Python
Pythonic版二分查找实现过程原理解析
2020/08/11 Python
购买瑞典当代设计的腕表和太阳眼镜:TRIWA
2016/10/30 全球购物
Myprotein亚太地区:欧洲第一在线运动营养品牌
2020/12/20 全球购物
总经理助理岗位职责
2013/11/08 职场文书
自荐信封面
2013/12/04 职场文书
新学期开学寄语
2014/01/18 职场文书
运动会广播稿30字
2014/01/21 职场文书
委托公证书
2014/04/08 职场文书
软件专业毕业生个人自我鉴定
2014/04/17 职场文书
希特勒的演讲稿
2014/05/23 职场文书
国家税务局领导班子对照检查材料思想汇报
2014/10/04 职场文书
2014年服务员工作总结
2014/11/18 职场文书
2015年大学生工作总结
2015/04/21 职场文书