utf8

文件的读写操作

你离开我真会死。 提交于 2020-02-11 20:26:37
1 f = open('lyrics') #打开文件 2 first_line = f.readline()#一行一行读 3 print('---'.center(50,'-')) 4 data = f.read()# 读取剩下的所有内容,文件大时不要用 5 print(data) #打印文件 6 f.close() #关闭文件 打开文件有:读、写、添加。   r,只读模式(默认)。   w,只写模式。【不可读;不存在则创建;存在则删除内容;】   a,追加模式。【可读; 不存在则创建;存在则只追加内容;】 1 f = open('listen','r',encoding='utf-8') 2 f = open('listen','w',encoding='utf-8') 3 f = open('listen','a',encoding='utf-8') 这叫做句柄语句 若要把第九行去掉,可用下面方法: 1 for index,line in enumerate(f.readlines()) : #可以取出行号 2 if index == 9 : 3 print('abc'.center(50,"#")) 4 continue 5 print(line.strip()) View Code 用readlines()显示是一个列表 1 f = open('listen','r'

MySql 中文乱码解决办法

左心房为你撑大大i 提交于 2020-02-10 18:52:57
mysql存入的中文数据乱码,可能有这两个原因 原因一 : 数据源配置和mysql字符集编码不符,或数据源配置没有设置字符集 解决方案:在数据源配置添加字符集 useUnicode=true&characterEncoding=utf-8 原因二: 在接受数据的时候已经乱码 解决方案: 1,在接受数据的时候通过代码进行转码 HttpServletRequest request=ServletActionContext.getRequest(); request.setCharacterEncoding("UTF-8"); String sex=request.getParameter("userSex"); String sexs=new String(sex.getBytes("ISO-8859-1"),"UTF-8"); 2,在接受数据的时候就进行转码,在tomcat server.xml中添加 useBodyEncodingForURI="true" URIEncoding="UTF-8" 来源: https://www.cnblogs.com/xuwujing/p/7536728.html

MySQL中文乱码修改

北战南征 提交于 2020-02-10 18:52:20
一、从服务端进行修改 show variables like "%char%"; 然后可能显示如下信息,注意红色部分,不同的用户可能实际情况不同,但是需要保证除了 filesystem为binary外,其他都为utf8: +--------------------------+---------------+ | Variable_name | Value | +--------------------------+---------------+ | character_set_client | gbk | | character_set_connection | gbk | | character_set_database | utf8 | | character_set_filesystem | binary | | character_set_results | gbk | | character_set_server | utf8 | | character_set_system | utf8 | +--------------------------+-------------+ 通过如下SQL语句进行修改,全部设置为utf8即可: #设置数据库编码信息 SET character_set_client='utf8'; SET character_set

关于IDEA控制台乱码的问题

[亡魂溺海] 提交于 2020-02-09 18:48:53
关于这个问题,网上有很多解释,但是很多并不能完全解决这个问题。要真正意义上的解决这个问题。首先是要修改下面的两个配置。 1. 是打开 idea.exe.vmoptions, 和 idea64.exe.vmoptions. 一个是32位的,一个是64位的。 新增两行配置,这两行配置是非常关键的。 -Dfile.encoding=UTF-8 -Dconsole.encoding=UTF-8 一般而言,采用这种方法之后,即可解决对应的问题。 在这两个配置文件中,添加如下两个配置: 点击“保存”。 2. 在tomcat的配置中设置编码格式。   增加如下编码格式命令: -Dfile.encoding=UTF-8 只要做到如上两点,基本就可以解决这个问题。如果还是不行的话,欢迎在我的博客下留言讨论。 来源: https://www.cnblogs.com/code-climber/p/12287951.html

迭代器模式与Java Iterator源码

。_饼干妹妹 提交于 2020-02-08 16:13:43
迭代器模式 迭代器模式是一种将集合的增删改操作与集合的顺序遍历操作分离的设计模式。集合只负责增删改操作,迭代器对于集合的内部类,专门负责顺序遍历。Java的Iterator是迭代器模式的经典实现。笔者jdk版本是11.0.4,不同版本的jdk的Iterator相关类及其实现有所不同,下面以jdk11.0.4为例。 Iterator jdk定义了一个 Iterator 接口,声明了 hasNext , next , remove 方法,分别用于检查是否结束遍历、遍历下一个元素、删除元素的操作。 /** * An iterator over a collection. {@code Iterator} takes the place of * {@link Enumeration} in the Java Collections Framework. Iterators * differ from enumerations in two ways: * * <ul> * <li> Iterators allow the caller to remove elements from the * underlying collection during the iteration with well-defined * semantics. * <li> Method names have

[leetcode]UTF-8 Validation

筅森魡賤 提交于 2020-02-08 13:57:38
位运算 class Solution: def validUtf8(self, data: List[int]) -> bool: multiByteCount = 0 for byte in data: if multiByteCount > 0: # in multi-byte # start with 10 if byte & 0x80 == 0x80 and byte | 0xbf == 0xbf: multiByteCount -= 1 else: return False elif byte & 0x80 == 0x80: # start with 1, maybe multi-byte multiByteCount = 0 mask = 0x80 >> 1 while mask > 0 and byte & mask == mask: mask = mask >> 1 multiByteCount += 1 if multiByteCount > 3 or multiByteCount == 0: return False else: # start with 0 continue if multiByteCount > 0: return False return True    来源: https://www.cnblogs.com/lautsie/p

ruby Encoding

家住魔仙堡 提交于 2020-02-08 09:40:52
一. 查看ruby支持的编码 Encoding.name_list 二. 搜索编码 Encoding.find('US-ASCII') #=> US-ASCII,不存在则抛出异常 三. __ENCODING__ __ENCODING__ #=> UTF-8, (__ENCODING__用作创建字符串的编码) 这里提一下: # -*- coding:gbk -*- __ENCODING__ #=> GBK # -*- coding:utf-8 -*- __ENCODING__ #=> UTF-8 源代码文件中,若包含中文编码,则需要注意两点: 1. 必须在首行添加 # -*- coding: UTF-8 -*- ,告诉解释器使用utf-8来解析源码。 2. 必须设置编辑器保存文件的编码为utf-8。 四.查看字符串编码 '法海你不懂爱'.encoding #=> UTF-8 五. force_encoding # -*- coding:utf-8 -*- '法海你不懂爱'.force_encoding('gbk') #=> 娉曟捣浣犱笉鎳傜埍 注意 : force_encoding 方法只是改变了字符串对象的编码信息,并没有改变字符串对象实际存储的内容, 这里‘法海你不懂爱’实际是以utf-8的编码存储的,现在修改了他的编码方式为gbk,ruby就会以gbk的方式来解码

十分钟搞清字符集和字符编码

£可爱£侵袭症+ 提交于 2020-02-08 09:25:40
本博客已经迁移至: http://cenalulu.github.io/ 本篇博文已经迁移,阅读全文请点击: http://cenalulu.github.io/linux/character-encoding/ 本文将简述字符集,字符编码的概念。以及在遭遇乱码时的一些常用诊断技巧 背景:字符集和编码无疑是IT菜鸟甚至是各种大神的头痛问题。当遇到纷繁复杂的字符集,各种火星文和乱码时,问题的定位往往变得非常困难。本文就将会从原理方面对字符集和编码做个简单的科普介绍,同时也会介绍一些通用的乱码故障定位的方法以方便读者以后能够更从容的定位相关问题。在正式介绍之前,先做个小申明:如果你希望非常精确的理解各个名词的解释,那么可以查阅wikipedia。本文是博主通过自己理解消化后并转化成易懂浅显的表述后的介绍。 什么是字符集 在介绍字符集之前,我们先了解下为什么要有字符集。我们在计算机屏幕上看到的是实体化的文字,而在计算机存储介质中存放的实际是二进制的比特流。那么在这两者之间的转换规则就需要一个统一的标准,否则把我们的U盘查到老板的电脑上文档就乱码了,小伙伴QQ上传过来的文件在我们本地打开又乱码了。(PS:这里科普下 乱码 的英文native说法是 mojibake )。于是为了实现转换标准,各种字符集标准就出现了。简单的说字符集就规定了某个文字对应的二进制数字存放方式(编码

搞清字符集和字符编码

五迷三道 提交于 2020-02-08 07:08:44
本文将简述字符集,字符编码的概念。以及在遭遇乱码时的一些常用诊断技巧 背景:字符集和编码无疑是IT菜鸟甚至是各种大神的头痛问题。当遇到纷繁复杂的字符集,各种火星文和乱码时,问题的定位往往变得非常困难。本文就将会从原理方面对字符集和编码做个简单的科普介绍,同时也会介绍一些通用的乱码故障定位的方法以方便读者以后能够更从容的定位相关问题。在正式介绍之前,先做个小申明:如果你希望非常精确的理解各个名词的解释,那么可以查阅wikipedia。本文是博主通过自己理解消化后并转化成易懂浅显的表述后的介绍。 什么是字符集 在介绍字符集之前,我们先了解下为什么要有字符集。我们在计算机屏幕上看到的是实体化的文字,而在计算机存储介质中存放的实际是二进制的比特流。那么在这两者之间的转换规则就需要一个统一的标准,否则把我们的U盘插到老板的电脑上,文档就乱码了;小伙伴QQ上传过来的文件,在我们本地打开又乱码了。于是为了实现转换标准,各种字符集标准就出现了。简单的说字符集就规定了某个文字对应的二进制数字存放方式(编码)和某串二进制数值代表了哪个文字(解码)的转换关系。 那么为什么会有那么多字符集标准呢?这个问题实际非常容易回答。问问自己为什么我们的插头拿到英国就不能用了呢?为什么显示器同时有DVI,VGA,HDMI,DP这么多接口呢?很多规范和标准在最初制定时并不会意识到这将会是以后全球普适的准则

字符集和字符编码

狂风中的少年 提交于 2020-02-08 06:04:03
http://os.51cto.com/art/201503/467929.htm 什么是字符集 在介绍字符集之前,我们先了解下为什么要有字符集。我们在计算机屏幕上看到的是实体化的文字,而在计算机存储介质中存放的实际是二进制的比特流。那 么在这两者之间的转换规则就需要一个统一的标准,否则把我们的U盘插到老板的电脑上,文档就乱码了;小伙伴QQ上传过来的文件,在我们本地打开又乱码了。 于是为了实现转换标准,各种字符集标准就出现了。简单的说字符集就规定了某个文字对应的二进制数字存放方式(编码)和某串二进制数值代表了哪个文字(解 码)的转换关系。 那么为什么会有那么多字符集标准呢?这个问题实际非常容易回答。问问自己为什么我们的插头拿到英国就不能用了呢?为什么显示器同时有 DVI,VGA,HDMI,DP这么多接口呢?很多规范和标准在最初制定时并不会意识到这将会是以后全球普适的准则,或者处于组织本身利益就想从本质上区 别于现有标准。于是,就产生了那么多具有相同效果但又不相互兼容的标准了。 说了那么多我们来看一个实际例子,下面就是屌这个字在各种编码下的十六进制和二进制编码结果,怎么样有没有一种很屌的感觉? 字符集 16进制编码 对应的二进制数据 UTF-8 0xE5B18C 1110 0101 1011 0001 1000 1100 UTF-16 0x5C4C 1011 1000 1001