读写json中文ASCII乱码问题的解决方法
今天要帮前端写一个小后台,就是读取数据然后转成json送给他,让他去展示。数据很简单,但是处理的时候遇到了一个问题,文件中涉及到了中文的处理,每次处理完写的json格式就是ASCII码,完全没办法用。代码如下:
# -*- coding: utf-8 -*- import json import codecs f = codecs.open('data.txt', 'r', 'utf-8') content = json.load(f) print content[0]['id'] jsdata = json.dumps(content, sort_keys=True, indent=4) f.close() j = codecs.open('test.json', 'w') j.write(jsdata) j.close()
网上查了一下,修改后的代码如下:
# -*- coding: utf-8 -*- import json import sys reload(sys) sys.setdefaultencoding( "utf-8" ) f = open('data.txt', 'r') content = json.load(f) print content[0]['id'] # 拼接json数据,转码为非ascii编码 jsdata = json.dumps(content, sort_keys=True, indent=4, ensure_ascii=False) f.close() j = open('test.json', 'w') j.write(jsdata) j.close()
以上这篇读写json中文ASCII乱码问题的解决方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
有关json_decode乱码及NULL的问题
具体内容请看下文吧. 写接口的同学应该会经常遇到数据格式的转换,这时候必不可少的两个函数就是json_encode()和json_decode(). 这两个函数使用的时候有很多的主要事项,在这里我来说一下json_decode(). json_decode(): 对JSON 格式的字符串进行解码,接受一个JSON 格式的字符串并且把它转换为 PHP 变量. (1)将数据转换成数组之后,打印会显示NUll: 原因之一json_decode只支持utf-8. iconv('gbk','utf-8',
-
Python读写Json涉及到中文的处理方法
今天在帮前端准备数据的时候,需要把数据格式转成json格式,说实话,涉及到中文有时候真的是很蛋疼,除非对Python的编码规则比较了解,不然处理起来真的很蛋疼. 整个逻辑 我们需要处理的是把一些文章处理,生成多个html文件,然后用json来显示文章的列表,图片,摘要和标题. 思路 为了以后的数据扩展,那必须有一个数据库,我的想法就是自己写一个简单的网页做为提交输入,然后post到后台以后录入到数据库中,再写一个展示文章的页面,展示效果正确后,写一个requests动态的把所有的数据都爬下来生成
-
读写json中文ASCII乱码问题的解决方法
今天要帮前端写一个小后台,就是读取数据然后转成json送给他,让他去展示.数据很简单,但是处理的时候遇到了一个问题,文件中涉及到了中文的处理,每次处理完写的json格式就是ASCII码,完全没办法用.代码如下: # -*- coding: utf-8 -*- import json import codecs f = codecs.open('data.txt', 'r', 'utf-8') content = json.load(f) print content[0]['id'] jsdata
-
php版微信公众平台回复中文出现乱码问题的解决方法
本文实例分析了php版微信公众平台回复中文出现乱码问题的解决方法.分享给大家供大家参考,具体如下: 微信公众平开发时碰到回复中文乱码了,这个问题小编发现是编码问题,其实只要把编码转成utf8就可以解决了,具体来看看. 很多微信公众平台的自动回复程序都是 ThinkWechat.class.php 这个类开发的,今天碰到一个莫名其妙的乱码问题,查问题发现是GB2312编码导致,所以要修改源码. 先增加一个方法: /** * 检测是否UTF-8 * @param $str * @return boo
-
SecureCRT中文显示乱码问题的解决方法
环境:SecureCRT登陆REDHAT5.3 LINUX系统 问题:vi编辑器编辑文件时文件中的内容中文显示乱码,但是直接使用linux系统terminal打开此文件时中文显示正常,确诊问题出现在客户端即SecureCRT的显示问题 解决方法: 1.修改远程linux机器的配置 [root@rhel ~]#vi /etc/sysconfig/i18n 把LANG改成支持UTF-8的字符集 如: LANG="zh_CN.UTF-8″ 或者是 LANG="en_US.UTF-8″ 本文
-
java中文传值乱码问题的解决方法
本文实例为大家分享了java中文传值乱码问题,以及解决方法,供大家参考,具体内容如下 一般编码格式设置: 1.可以经过两次编码处理,即设置字符集后,在插入前解码字符集,也是最有效的方式 设置字符集: String value=null; try { value= URLEncoder.encode(jsonObjectPar.getString("value"), "UTF-8"); } catch (UnsupportedEncodingException e)
-
jquery ajax传递中文参数乱码问题及解决方法说明
jQuery传递中文参数乱码,原因是默认的传递方式没有采用UTF-8,所有我们可以在传递参数的时候对参数进行编码,然后再操作,代码如下,红色的代码为传递的参数,已标注 复制代码 代码如下: smsubmitclick = function(){ $(document).ready(function(){ var name = $("#txt_name").val(); var type = $("#seltype option:selected&q
-
Node.js抓取中文网页乱码问题和解决方法
Node.js 抓取非 utf-8 的中文网页时会出现乱码问题,比如网易的首页编码是 gb2312,抓取时会出现乱码 复制代码 代码如下: var request = require('request') var url = 'http://www.163.com' request(url, function (err, res, body) { console.log(body) }) 可以使用 iconv-lite来解决 安装 复制代码 代码如下: npm install ico
-
jsp fckeditor 上传中文图片乱码问题的解决方法
经过我修改ConnectorServlet.java和SimpleUploaderServlet.java两个文件,重新生成fckeditor-java-2.3.jar包,要解决所有的乱码问题,有3部要修改1.修改Web容器的字符编码,如果Web容器用的是Tomcat,则修改conf/server.xml文件,在两个Connector中添加"URIEncoding="utf-8"",我这里用的是utf-8编码,所以修改成utf-8,若项目是gb2312编码,则设置为
-
PHP使用strrev翻转中文乱码问题的解决方法
本文实例讲述了PHP使用strrev翻转中文乱码问题的解决方法.分享给大家供大家参考,具体如下: 在用PHP中的strrve翻转中文时,会出现乱码情况 例如: header("Content-Type: text/html; charset=utf-8"); echo strrev("处理使用strrev()函数时的乱码问题")."<br>"; 运行结果为: ��鮗遠籹䄚綗氕潇�)(verrts��翽䆐焤� 解决方法就是自己重写一个c
-
php中json_encode处理gbk与gb2312中文乱码问题的解决方法
本文讲述了php中json_encode处理gbk与gb2312中文乱码问题的解决方法,具体方法如下: 1.json_encode()中文在gbk/gb2312中对中文返回为null $arr = array ( array ( 'catid' => '4', 'catname' => 'www.jb51.net', 'meta_title' => '我们' ) ); echo json_encode($arr); 运行结果: [{"catid":"4&qu
-
Mysql5.5安装配置方法及中文乱码的快速解决方法
1.启动服务 windows下DOS命令窗口输入指令: 查看服务是否启动:net help services 启动mysql服务:net start mysql 停止mysql服务:net stop mysql linux下在bash下,输入指令: 查看服务状态:service mysqld status 启动mysql服务:service mysqld start 停止mysql服务:service mysqld stop 2.登陆 mysql -u[这里输入用户名] -p[这里输密码] 3.
随机推荐
- Validform验证时可以为空否则按照指定格式验证
- oracle创建表空间、授权、创建用户、导入dmp文件
- 值得收藏的asp.net基础学习笔记
- php+mysql+jquery实现日历签到功能
- Mysql5升级到Mysql5.5的方法
- 分享两个手机访问pc网站自动跳转手机端网站代码
- javascript静态页面传值的三种方法分享
- 通过实例简单讲解Android App中的Activity组件
- linux 命令每天必学之tar命令
- MongoDB 学习笔记
- sqlserver 数据类型转换小实验
- java九九乘法表示例
- flash 文件是否存在判断代码
- Android 解决ScrollView嵌套CridView显示问题
- Android开发之资源目录assets与res/raw的区别分析
- Spring MVC文件上传大小和类型限制以及超大文件上传bug问题
- ASP.NET如何定时调用WebService服务
- php学习之变量的使用
- docker常用命令操作方法
- Python面向对象程序设计OOP入门教程【类,实例,继承,重载等】