问题描述–(linux 下经常遇到的编码问题) ---- 师兄在 windows 下写的一段程序 (C/C++ 编写), 传给我在 Linux 下面运行, 编译和运行的时候输出的时候中文乱码了 ?...Windows 中默认的文件格式是 cp936(通常被视为等同 GBK), 而 Linux 一般都是 UTF-8 3. 背景知识 (什么是编码?)...方法二:在 Vim 中可以直接查看文件编码 :set fileencoding 即可显示文件编码格式 ?...如果你只是想查看其它编码格式的文件或者想解决用 Vim 查看文件乱码的问题,那么你可以在 ~/.vimrc 文件中添加以下内容: set encoding=utf-8 fileencodings=ucs-bom...convert_encoding.py 基于 Python 的文本文件转换工具 decodeh.py 提供算法和模块来谈测字符的编码 Linux: 工具 描述 使用 vim 使用 vim 直接进行文件的编码转换
Vim 设置编码 让Vim能正确显示和保存各种编码文件内容是个头疼的事情,今天专注的把这个问题研究一下 首先是Vim编码配置的三个选项: encoding(enc): 此项目配置的是vim的默认显示编码...,如果你打开的文件编码与该属性配置的编码不同,那么Vim会将编码自动转换到配置编码再显示 fileencodings(fencs): 此项目配置的是一个编码列表,Vim在读取文件的时候,会根据这里的编码自动检测...1.在Vim中可以直接查看文件编码 :set fileencoding 即可显示文件编码格式。...如果你只是想查看其它编码格式的文件或者想解决用Vim查看文件乱码的问题,那么你可以在 ~/.vimrc 文件中添加以下内容: set encoding=utf-8 fileencodings=ucs-bom...,Vim会将内容转换为utf-8格式来显示,但是保存的时候文件的编码却依然是cp936 如果我的工作环境主要是编辑utf-8,偶尔会修改一下cp936的编码,我们该怎么配置呢?
@TOC08_Linux基础-vim-tmux-字符编码---一. vim文本编辑器-vim(==编辑文本==)Windows:记事本、word、sublime、pycharm能编辑音乐、视频、图片?...答:不能,==只能编辑文本==Linux:vi(==字符界面==),vim(==字符界面==),gedit(==图形化==)==unix 都会安装vi==vim 是vi的==加强版==(在vi基础上添加其他功能...~# vim ==.vimrc==root@sanchuang-linux ~# cat .vimrcset numberset showcmd set encoding=utf-8set tabstop...# rz -E(注:将windows code_test.txt文件上传linux)rz waiting to receive.# lscode_test.txt# vim code_test.txt...答:以utf-8的方式打开gbk编码以什么编码方式存储,就要以什么编码方式解码总结(xmind)图片vim文本编辑器vi,vimvim常见模式命令模式文件打开默认就是命令模式ESC键到达编辑模式a,i,
ascii编码,即美国标准协会制定的编码规范,采用一个字节表示的128个字符,其中95个可见字符,33个不可见字符。...unicode编码,由于ascii编码只能表示有限数量的字符,为了解决计算机中理多字符编码的问题,出现了unicode编码,Java中字符串使用的编码方式,采用两个字节表示一个字符,ASCII字符的编码不变...hex编码,对于每个字节,其包含8个比特位,其高4位和低4位分别作为一个十六进制数字的低4位,高4位补0,以这两个字节对应的十六进制数字作为该字节的hex编码,所以字节数组经过hex编码后长度为原来的2...base64编码,先转换为字节数组,再进行编码,可以表示6个比特,编码后长度为原来的4/3倍。...base58编码,先转换为字节数组,再进行编码,可以表示log258个比特(约5.858),编码后长度为原来的1.37倍。
一、请求编码 1.1 直接在地址栏中给出中文 请求数据是由客户端浏览器发送服务器的,请求数据的编码是由浏览器决定的。...name=天易,那么其中“天易”是什么编码的呢?不同浏览器使用不同的编码,所以这是不确定的!...页面的编码就是页面中输入数据的编码。...当然,通常浏览器都支持来设置当前页面的编码,如果用户在看到编码时,去设置浏览器的编码,如果设置的正确那么乱码就会消失。...这时就需要先把要发送的数据转换成URL编码格式,再发送给服务器。 其实需要我们自己动手给数据转换成URL编码的只有GET超链接,因为表单发送数据会默认使用URL编码,也就是说,不用我们自己来编码。
编程过程中经常会遇到各类字符的编码方式,经常会混淆,在此总结下常用的编码方式以及其原理。...表示一致 2、 对于n个字节的字符,第一个字节的最高位为n个1,第n+1设为0,后面每个字节的前两位都为10,剩下的用字符对应的unicode来表示,如下图 Unicode符号范围 | UTF-8编码方式...比如2个字符’1’,’9’,他们对应的Ascii为0x31和0x39,因此表示形式则为2个字节0x31 0x39 假如用BCD格式来表示则将其数字对应的二进制前4位去掉,然后合并,即将00000001和...Base64编码: Base64编码的作用是将ascii里面的不可见字符变成可见字符来传输。...Base64编码的最小使用单元是4个字节,每个字节使用6位,假如不足6的整数倍,则后面补0,剩下的字符补=,因为计算机存储字节是8位,所以计算字符值时在前面补2个0。
Linux操作系统默认编码都是UTF-8,如果没有特殊情况,最好设置encoding为UTF-8。...,Vim 会把内部编码转换为屏幕编码,再用于输出。...fileencoding 当 Vim 从磁盘上读取文件的时候,会对文件的编码进行探测。如果文件的编码方式和 Vim 的内部编码方式不同,Vim 就会对编码进行转换。...转换完毕后,Vim 会将 fileencoding 选项设置为文件的编码。当 Vim 存盘的时候,如果 encoding 和 fileencoding 不一样,Vim 就会进行编码转换。...(1) 在Native Linux/Unix环境下,locale的值与tenc的值不同 (2) 在Windows环境下,终端软件设置的Encoding(可以认为是locale)的值与tenc的值不同
本文介绍几个Linux命令来检测和转换文本文件的编码格式....检测文件编码格式 enca 命令名是Extremely Naive Charset Analyser的缩写, 从它这个卖萌的名字来看, 应该可以用来检测文件的编码格式....根据 enca 的文档, 当我们运气好的时候, 就可以按照上面不添加任何额外参数的情况下, 检测出文件的编码格式. 而就我的经验来看, Linux的语言设置是一个影响运气的因素....上面的操作在默认语言为中文的Linux中, 行为就会如同上面给出的结果正确的检测出文件的中文编码格式....test.txt GBK 转换文件编码格式 在知道了文件的正确编码格式之后, 我们往往会希望将文件转换为UTF8之类常用或者系统默认支持的编码格式, 以便后续进一步处理.
保存退出 06.vim配置 在 Vim 中配置格式化选项主要涉及使用 Vim 的设置选项,这些选项可以在 Vim 的配置文件 ~/.vimrc 中设置,以确保每次启动 Vim 时都会自动应用它们。...格式化时断行: set textwidth=80 如果一行的长度超过80个字符,Vim会在输入时自动换行。...自动格式化: set formatoptions+=c set formatoptions+=r set formatoptions+=o 这些选项设置了Vim在插入模式中自动格式化文本的方式。...保存前自动格式化: au BufWritePre * :normal gg=G 这个自动命令会在每次写入文件之前对整个文件内容进行自动格式化。...Vim 社区还提供了大量插件来辅助格式化特定的编程语言,如prettier(适用于多种语言)、clang-format(适用于 C 和 C++)等,你可以根据需要安装和配置这些插件以实现更高级的格式化功能
微软采用了标准代码页 (Code Page,代码页是字符集编码的别名,也叫内码表) 的方法,把全世界的编码方式统一编号,在不同的地方采用对应地方的编码方式,微软把它称为 ANSI 编码。...比如在简体中文操作系统中ANSI编码默认指的是GB系列编码(GB2312、GBK、GB18030);在繁体中文操作系统中ANSI编码默认指的是Big5编码(港澳台地区使用的繁体汉字编码);在日文操作系统中...ANSI编码默认指的是 Shift_JIS 编码。...Locale 是指特定于某个国家或地区的一组设定,包括代码页,以及数字、货币、时间和日期的格式等。可以用 chcp 命令获得当前的代码页设置。...刨根究底字符编码之七——ANSI编码与代码页 https://zhuanlan.zhihu.com/p/27136737 [2].
文件系统类型就是分区的格式。...msdos: dos文件系统类型 vfat:支持长文件名的dos分区文件系统,可以理解为winds文件系统类型 iso9660: 光盘格式文件系统 ext2/ext3/ext4: linux下主流的文件系统...xfs: linux下一种高性能的日志文件系统,在centos7.x中默认的文件系统 nfsd: 一种分布式文件系统 1.
代码就像家里的各种物品,格式化就好比对家中物品的排放。家中的物品随便怎么放,物品都不会反对,房子也不会介意,但是物品的排放合理、规整,会让家里变得更具有美感。...代码也是一样,代码写成什么样子,代码不会反对,计算机也不会介意(除非不能运行),但是毕竟还是会有人来欣赏、维护这些代码,这时候具有很好格式的代码就显得尤为重要了。...代码示例请参照上面的例子 应该还有很所关于格式化的规则,由于本人设计数据尚浅,接触的数据库也不是特别多,还希望大家帮忙补充
Python中默认的编码格式是 ASCII 格式,在没修改编码格式时无法正确打印汉字,所以在读取中文时会报错。有两种解决方法。...一种是在 python的编程工具 Pycharm 中设置默认编码 pycharm下载地址:http://www.jetbrains.com/pycharm/ 选择社区版即可,免费。
三种模式 vim中有“一般模式”,“编辑模式”,“命令模式“三种模式,其作用分别为: 一般模式中能够移动光标查看文件,可以删除字符或整行,复制,粘贴处理文档内容用 vi或者vim打开一个文件进入的就是一般模式...强制写入文件,即使文件属性为“只读”需要对文件有写的权限 :q 离开vim :q! 强制离开文件,不保存 :wq 保存并离开 :wq!...暂存文件 使用vim编辑时,会在同目录下建立名为.filename.swp的临时文件记录修改,正常退出后删除。...(Q)uit:离开vim (A)bort:放弃编辑行为。...4. vim配置文件 vim配置文件包括~/.vimrc,~/.viminfo ~/.vimrc为vim参数设置 ~/.viminfo为用户在vim中的操作记录 可以在一般模式种进行设置 命令 说明 :
例如,如果你想要搜索的单词是 linux,下图显示的就是在 Vim 窗口底部的搜索命令: 敲击回车键之后,你会看到 Vim 会将光标停留在从光标在插入模式中的位置开始,找到的包含此单词的第一行。...这就意味着如果我要搜索 linux,那么 Linux 是不会匹配的。...然而,如果这不是你想要的搜索方式,你可以使用如下命令来使搜索变得不区分大小写: :set ignorecase 所以当我设置 ignorecase 变量后再使用前边提到的命令,搜索 linux,那么 Linux...:set ignorecase :set smartcase 例如,如果一个文件中既包含 LINUX 也包含 linux,在开启智能大小写搜索功能时,如果使用 /LINUX 进行搜索,只有单词 LINUX...反之,如果搜索 /linux,那么不论大小写的搜索结果都会被匹配。 4、递进搜索 就如谷歌一样,随着你输入查询字串(字串随你每输入一个字符不断更新)显示不同的搜索结果,Vim 也同样提供了递进搜索。
目录 Linux 软件包管理器 yum 什么是软件包 查看软件包 如何安装软件 如何卸载软件 软件源编辑 关于 rzsz Linux编辑器-vim使用 vim的基本概念 vim的基本操作 vim...正常模式命令集 vim末行模式命令集 总结 编辑 其他操作 快速退出 批量注释及注释删除 sudo 配置 Linux 软件包管理器 yum 什么是软件包 在Linux下安装软件, 一个通常的办法是下载到程序的源代码...软件包和软件包管理器, 就好比 "App" 和 "应用商店" 这样的关系. yum(Yellow dog Updater, Modified)是Linux下非常常用的一种包管理器....关于 rzsz 这个工具用于 windows 机器和远端的 Linux 机器通过 XShell 传输文件. 安装完毕之后可以通过拖拽的方式将文件上传过去....Linux编辑器-vim使用 vi/vim的区别简单点来说,它们都是多模式编辑器,不同的是vim是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面。
生信技能树学习笔记Vim编辑器——三种模式命令模式 末行模式 编辑模式图片命令模式vim Data/example.fq## 按 : set nu 显示行号## 方向键或hjkl移动光标## 30j:向下移动...显示行号## :set nonu 取消行号## :set list 显示不可见字符(分辨制表符与空格)## :set nowrap 显示在一行 类似 less -S## :set ff=unix 将文件格式转换为...unix# 查询## 输入/keyword进行查询 n/N 向上或向下#替换## :%s///g 全局替换## :s///g 替换光标所在行## :s/// 只替换光标所在行的第一次vim的异常情况图片当多处编辑或异常断开时会有待处理的....swp文件如果修改不重要可以直接删除.swp文件Vim编辑器:vimtutor zh_CN查看帮助文档
使用vim命令打开一个文件: 例如,打开openwrt系统下的system配置文件 vim /etc/config/system 内容如下: config system option...—- 放弃所有修改,从上次保存文件开始再编辑命令历史 如果是非正常关闭编辑器 再次vim该文件的时候会出现以下情形: E325: ATTENTION Found a swap file by the...If this is the case, use ":recover" or "vim -r system" to recover the changes (see ":help recovery...12288 Apr 25 06:33 .system.swp 然后使用rm -rf删除该文件 root@OpenWrt:/etc/config# rm -rf .system.swp 再次vim
采用2字节来表示Unicode转化格式,它是定长的表示方法,不论什么字符都可以用两个字节表示 UTF-8编码规则 UTF-8采用一种变长技术,每个编码区域有不同的字码长度,不同的字符可以由1~6...因此,IE实际上就是将查询字符串,以GB2312编码的格式发送出去。 Firefox的处理方法,略有不同。它发送的HTTP Head是“wd=%B4%BA%BD%DA”。...然后,从“严”的最后一个二进制位开始,依次从后向前填入格式中的x,多出的位补0。...2)Unicode编码指的是UCS-2编码方式,即直接用两个字节存入字符的Unicode码。这个选项用的little endian格式。...选择完”编码方式“后,点击”保存“按钮,文件的编码方式就立刻转换好了。 7. Little endian和Big endian 上一节已经提到,Unicode码可以采用UCS-2格式直接存储。
这个是在网上找的一张关于vim键盘的图 1. 前言 vim是Linux编辑器,功能上和记事本没有区别。不仅仅可以用来写c语言和c++,其它语言也可以在上面写。...2. vim的基本概念 vim是一款多模式的编辑器,但是目前掌握这3种即可,分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下...要查看你的所有模式:打开vim,底行模式直接输入 3. vim的基本操作 进入vim,在系统提示符号输入vim及文件名称后,就进入vim全屏幕编辑画面: vim a.txt 不过有一点要特别注意,就是你进入...) : wq (输入「wq」,存盘并退出vim) : q!...4.3 底行模式 用来进行让vim进行包括但不限于shell进行交互的。 w (保存当前文件) wq (输入「wq」,存盘并退出vim) q! (输入q!
领取专属 10元无门槛券
手把手带您无忧上云