Fedora中显示windows下的文件
目录
一些预备知识:
在中国windows的编码是本地编码 , 即GBK,GB2312,GB18030等
GBK 也就是windows-986
Windows现在只支持Unicode (UTF-16),不再支持ANSI(因为各国家地区标准不统一,导致转换不便)

android系统中的编码,根据不同地区法律改变?
ASCIl的时候, 还不区分字符集和编码.
字符集(char set)就是字符的集合,收录了一定数量的字符。每个字符有对应的ID值,叫码点(code point)。实际存储的时候,不一定是直接存储字符串的码点(比如,为了节约空间),要进行转换。这个转换规则就是编码。
有多少个字符集呢?

名词解析:
character encoding
code point / code position
character map 字符映射
BOM (Byte Order Mark),字节顺序标记,出现在文本文件头部,Unicode编码标准中用于标识文件是采用哪种格式的编码。
UCS 规范建议我们在传输字节流前, 先传输字符 "Zero Width No-Break Space"。这样如果接收者收到 FEFF,就表明这个字节流是 Big-Endian 的;如果收到FFFE,就表明这个字节流是 Little- Endian 的。因此字符 "Zero Width No-Break Space" (“零宽无间断间隔”)又被称作 BOM。

ANSI ANSI编码
ascii gbk2312 big5 等都是ANSI的一种
不同 ANSI 编码之间互不兼容
UCS Unicode Character Set
UTF-8 UTF意为通用字集转换格式(Universal Character Set Transformation Format)
编码方案
UTF-7、UTF-8和UTF-16都是基于Unicode的编码方案。
Unicode Universal Multiple-Octet Coded Character Set
范围0-0x10FFFF : 1114112个字符 (17*65536 : 17个plane,每个plane有65536个字符)
已定义的有近十万个字符,其中七万多是汉字

字符集 UTF-8编码用这个字符集,UTF-16也是用这个字符集.
MBCS(Multi-Byte Chactacter System,即多字节字符系统) 它是编码的一种类型,而不是某个特定编码的名称。
UTF-16 和 UTF-8 一样是变长的编码. (它们变长的"粒度"不一样,以8比特为单位增加和以16比特为单位增加.),以此类推UTF-32 至少需要32比特表示
因为至少要二个字节表示一个字符,所以UTF-16不兼容ASCII (一个字节)
码位 : 可以分配给字符的数字。
UCD: Unicode字符数据库(Unicode Character Database)
block script
Big Endian和Little Endian

utf-8没有大小端的问题?
因为UTF-8是前缀码,而UTF-16有这个问题.所以需要BOM标记.
命令:
locale
locale -a
问题
一篇文章能有两种编码吗(比如前部分为UTF-8 , 后面为GBK18030) ? 如果这样不冲突,编码如何被解码? (或者这样表述更清楚,两种编码能混用吗?)
一些工具:
查看字符的实际编码.对应的二进制数据.
Linux下的工具:
locale 命令的作用范围,例外情况( 在某个应用或路径中使用指定的locale)
字符集:en_US.UTF-8 支持中文吗?
en_US.UTF-8 表示的字符集和zh_CN.UTF8 都是UTF-8 , 前面的en_US 或 zh_CN只是告诉系统,你讲什么语言,在哪个地域.
UTF-8是编码,它属于Unicode字符集。
解码,编码过程?
UTF-16分为大端和小端, UTF-8呢?
UTF-8
一段二进制编码,如何确定它是GBK还是BIG5还是UTF-16/UTF-8?

活用:
自己如何设计出一种编码?
输入法设计
编码类型转换:

============================================================================================================
一些可以帮助理解的模型,解释字符集等一系列相关概念的关系:
四层模型,五层模型
(其实大多数代码页都不需要完整的四层模型,例如GB18030以字节为编码单位,直接规定了字节序列和字符的映射关系,跳过了第二层,也不需要第四层。)
"the complete model needed to describe character sets and encodings"
a character set encoding involves at least two components, a set of characters, and a system for their encoded representation in the computer.
A more complete model is actually necessary, involving four different levels of representation: the abstract character repertoire, the coded character set, the character encoding form, and the character encoding scheme.
4个
1. abstract character repertoire 抽象字符集 字符的范围
抽象的字符层面
2. coded character set 编码字符集 用数字表示字符 utf-8
数学意义上的字符编号
比如Unicode的某个字符的,还没被转换成具体的存储内容前的号码
3. character encoding form 字符编码格式 用基本数据类型表示字符
程序员的视角:字节
跟大小端无关的实际存储
4. character encoding scheme字符编码方案 作为字节流的字符
二进制的实际表示:电脑中的实际存储的字节 (BE/LE)
UTF-16, UTF-32 等多字节才需要这一层 大小端
(
Character set encoding basics
http://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&id=iws-chapter03
浅谈文字编码和Unicode

http://www.fmddlmyy.cn/text16.html
http://www.fmddlmyy.cn/text16.html
A tutorial on character code issues
https://www.cs.tut.fi/~jkorpela/chars.html)
计算机组成原理中的概念:
Fedora中显示windows下的文件的更多相关文章
- [转] C#2010 在TreeView控件下显示路径下所有文件和文件夹
原文 张丹-小桥流水,C#2010 在TreeView控件下显示路径下所有文件和文件夹 C#2010学习过程中有所收获,便总结下来,希望能给和我一样在学习遇到困难的同学提供参考. 本文主要介绍两个自定 ...
- 如何在VMware Fusion中导入windows下的虚拟机
最近换了新款的mbp,因为偷懒,便将之前在windows台式机上的虚拟机搬了过来. 特此记录下搬运过程,方便以后查看. 一 操作过程 安装激活VMware 常规操作,无需赘言 拷贝windows下虚拟 ...
- Windows下对文件夹下所有图片批量重命名(附C++,python,matlab代码)
https://blog.csdn.net/u011574296/article/details/72956446: Windows下对文件夹下所有图片批量重命名(附C++,python,matlab ...
- 关于Windows下的文件后缀名问题
一.背景说明 有很多的小伙伴对windows下的文件后缀名不能很好地理解作用和区别,更不用说高深的使用了,在这里给大家说一下这些文件后缀名到底有什么区别,有什么作用呢? 二.说明 简单的说来,wind ...
- 将Windows下的文件同步到Linux下
需求:把Windows下的某些文件自动传送到Linux指定目录下 实现: 1. Windows下安装 WinSCP工具,并把Liunx服务器信息保存 2. 编写脚本,实现双击工具就把Windows下的 ...
- windows下在文件夹中快速启动cmd
在windows下,有时候由于特定需要,我们经常需要将cmd cd到某文件下进行命令行操作,其实,这里有一个小技巧: 在一个文件下,按住shift键,然后点击鼠标右键,你就会发现菜单栏中多出一个“在 ...
- windows下数据库文件使用脚本同步到linux下的mysql数据库中
1.背景 windows server 2008 下 每天会有 *.sql数据文件 需要上传到linux 中的mysql数据库中 而运维人员是在 windows server 下使用 xshell 连 ...
- linux,windows下日志文件查找关键词
1.查找 /apps/tomcat/tomcat3/apache-tomcat-7.0.69/logs 目录下已.txt结尾的文件,在文件中搜索关键字 IfcmpEcrService并打印行号 /lo ...
- windows下的文件遍历(使用CFindFile)
这个我一直都很想做了,前两天开始准备,查找了一下CFindFile的资料,然后把思路理清楚,就直接开始做了. 文件系统是一个操作系统以一部分,所以想文件操作,基本上就要依赖于操作系统提供的接口函数. ...
随机推荐
- floyd算法学习笔记
算法思路 路径矩阵 通过一个图的权值矩阵求出它的每两点间的最短路径矩阵.从图的带权邻接矩阵A=[a(i,j)] n×n开始,递归地进行n次更新,即由矩阵D(0)=A,按一个公式,构造出矩阵D(1):又 ...
- Linux系统sar命令解析
安装 如果系统没有该命令请安装: apt-get install sysstat yum install sysstat 安装完毕: vi /etc/default/sysstat ENABLED=& ...
- html5页面结构
我是html5初学者,最近闲来无事,和各位一起学些下html5. 开发环境 jdk1.6,tomcat6,开发工具eclipse. 新建一个web工程,创建一个index.jsp页面.页面代码如下. ...
- 使用ganglia监控hadoop及hbase集群
一.Ganglia简介 Ganglia 是 UC Berkeley 发起的一个开源监视项目,设计用于测量数以千计的节点.每台计算机都运行一个收集和发送度量数据(如处理器速度.内存使用量等)的名为 gm ...
- Spark SQL 之 Data Sources
#Spark SQL 之 Data Sources 转载请注明出处:http://www.cnblogs.com/BYRans/ 数据源(Data Source) Spark SQL的DataFram ...
- python排序之一插入排序
python排序之一插入排序 首先什么是插入排序,个人理解就是拿队列中的一个元素与其之前的元素一一做比较交根据大小换位置的过程好了我们先来看看代码 首先就是一个无序的列表先打印它好让排序后有对比效果, ...
- dubox首次调用消费者执行两次问题
dubbox+zookeeper服务开启后 Dubbo的超时重试机制为服务容错.服务稳定提供了比较好的框架支持,但是在一些比较特殊的网络环境下(网络传输慢,并发多)可能由于服务响应慢,Dubbo自身的 ...
- DevExpress Carousel 设置水平滑动列表
DevExpress中Carousel控件的应用 Carousel,直译为旋转木马,即旋转视图,可以做为数据的展示或者菜单项. 要实现触摸左右滑动的效果,其实是比较容易的,直接在CarouselPan ...
- 数据库Sharding系列文章
关于数据库Sharding的策略,有人整理出相关的方案,看完收获很大. 数据库分库分表(sharding)系列(五) 一种支持自由规划无须数据迁移和修改路由代码的Sharding扩容方案 数据库分库分 ...
- js获取页面url中的各项值
一. 通过window.location获取各项参数 1.获取页面完整的url url = window.location.href; 2.获取页面的域名 host = window.location ...