`
ZacMa
  • 浏览: 39188 次
  • 来自: 深圳
社区版块
存档分类
最新评论

不同编辑器如何显示文字猜想<35>

 
阅读更多
编辑器,究竟是如何分割一个文件内容和显示他们呢?,Win,Unix下分别是如何显示的?
假设abcd,他们在内存中不过是4个字节的存储空间,那么文本编辑器(txt,vim等)是如何解析呢,按照每个字节一个字符,还是2个字节一个字符呢?

1   我的理解是:
<1>. 一个编辑软件,必须首先找到一种编码格式,比如说根据系统的设置,比如说linux中对语言的设置等,找到一个可能的编码,或者根据软件的配置,找到一种合适的编码,比如vim,可以自己set fencs=utf-8,ucs-bom,shift-jis,gb18030,gbk,gb2312,cp936,设置各种编码,当我们用vim打开一种文件时候,他会做各种尝试,比如先用ascii,再用utf-8,尝试着去解析文件,看是否所有文件内容都可以按照该编码完全解析,如果可以,就这样显示, 如果不可以就换外一种编码尝试; 具体的读取方法可能是一次读取1,2,3,4个字节来尝试,或许这就是打开一个较大的文件比较慢的原因;
<2>. 对于win下的文本编辑器,当我们打开一个文件时,他会默认用自己设定的编码来解析,如果出错了,我们可以手动切换编码,再用该编码来解析整个文件;
<3>. 所有文件在磁盘上的存储都是,0,1,0,1这样来存储的,当我们要解析的时候必须指定一种编码再解析, 对于二进制文件,基本上会显示乱码,但也不一一定,除非碰巧可以用一种编码解析;
<4>. 二进制和非二进制的区别就是,非二进制文件是有格式的无长度,二进制只有长度无格式,
<5>. 反过来,当我们向文本编辑器里面写入文字的时候,我们写入的是一种编码对应的值,例如utf-8(或者ascii,两者127以内兼容)下,我们写入1,其实是我们写入了Ascii的1,意思就是我们写入的是字符1,那么我们写入的真正的被计算机运算处理的是: 字符1对应的值,是0x31;

2.  当然不单单是文本编辑器了,我们整个系统都需要一套编码,例如在xshell中也需要设置自己的编码;
分享到:
评论

相关推荐

    C#编程经验技巧宝典

    27&lt;br&gt;&lt;br&gt;0056 强行改变运算符的运算顺序 27&lt;br&gt;&lt;br&gt;第3章 程序算法 29&lt;br&gt;&lt;br&gt;3.1 数据结构 30&lt;br&gt;&lt;br&gt;0057 如何实现单向链表 30&lt;br&gt;&lt;br&gt;0058 如何实现双向链表 35&lt;br&gt;&lt;br&gt;0059 如何实现堆栈 41&lt;br&gt;...

    C源代码实例集

    &lt;br&gt;075 绘制余弦曲线和直线的迭加&lt;br&gt;076 计算高次方数的尾数 &lt;br&gt;077 ...猜想&lt;br&gt;084 素数幻方 &lt;br&gt;085 百钱百鸡问题 &lt;br&gt;086 爱因斯坦的数学题 &lt;br&gt;087 三色球问题&lt;br&gt;088 马克思手稿中的数学题 &lt;br&gt;089 配对新郎和...

    若干C,C++语言经典实用趣味程序设计编程精解

    角谷猜想 &lt;br&gt;82.四方定理 &lt;br&gt;83.卡布列克常数 &lt;br&gt;84.尼科彻斯定理 &lt;br&gt;85.回文数的形成 &lt;br&gt;86.自动发牌 &lt;br&gt;87.黑白子交换 &lt;br&gt;88.常胜将军 &lt;br&gt;89.抢30 &lt;br&gt;90.搬山游戏 &lt;br&gt;&lt;br&gt;91.人机猜数游戏 &lt;br&gt;92.人机...

    C/C++语言经典实用趣味程序设计编程百例精解

    C/C++语言经典实用趣味程序设计编程百例精解&lt;br&gt;&lt;br&gt;C/C++语言经典实用趣味程序设计编程百例精解(1)&lt;br&gt;&lt;br&gt;1.绘制余弦曲线 &lt;br&gt;2.绘制余弦曲线和直线 &lt;br&gt;3.绘制圆 &lt;br&gt;4.歌星大奖赛 &lt;br&gt;5.求最大数 &lt;br&gt;6.高次方数...

    C-C++语言趣味程序设计编程百例精解

    要发就发 &lt;br&gt;35.素数幻方 &lt;br&gt;36.百钱百鸡问题 &lt;br&gt;37.爱因斯坦的数学题 &lt;br&gt;38.换分币 &lt;br&gt;39.年龄几何 &lt;br&gt;40.三色球问题 &lt;br&gt;&lt;br&gt; C/C++语言经典实用趣味程序设计编程百例精解(5) &lt;br&gt;(详解收藏在)...

    De Sitter沼泽地猜想的热力学解释

    &lt;msub&gt; &lt;mrow&gt; &lt;mi&gt; m &lt;/ mi&gt; &lt;/ mrow&gt; &lt;mrow&gt; &lt;mi&gt; Pl &lt;/ mi&gt; &lt;/ mrow&gt; &lt;/ msub&gt; &lt;mi&gt;∇&lt;/ mi&gt; &lt;mi&gt; V &lt;/ mi&gt; &lt;mo&gt; / &lt;/ mo&gt; &lt;mi&gt; V &lt;/ mi&gt; &lt;/ math&gt;等同于 正温度阶段的条件。 在经典系统中,正负温度相...

    一个强标量弱引力猜想及一些启示

    &lt;msubsup&gt; &lt;mi&gt; M &lt;/ mi&gt; &lt;mi&gt; p &lt;/ &lt;/ mi&gt; &lt;mn&gt; 2 &lt;/ mn&gt; &lt;/ msubsup&gt; &lt;/ math&gt; $$ {M} _ {\ mathrm {p}} ^ 2 $$,其中V是标量势。 它对应于这样的说法:对于标量场的任何值,标量的自相互作用必须强于...

    一本通:1157:哥德巴赫猜想

    #include&lt;iostream&gt; #include&lt;iomanip&gt; #include&lt;cmath&gt; #include&lt;cstring&gt; #include&lt;cstdio&gt; using namespace std; int ged(int n) { for(int i=2;i&lt;(n/2+1);i++) { int y,x; y=1; for(int j=2;j&lt;i;j++) ...

    角谷猜想.csproj

    对于角谷算法的验证和猜想,我们必须去探求一些不知道的资源和方法 。 &lt;?xml version="1.0" encoding="utf-8" ?&gt; &lt;configuration&gt; &lt;startup&gt; &lt;supportedRuntime version="v4.0" sku=".NETFramework,Version...

    csdn首页数学猜想测试程序

    http://topic.csdn.net/u/20080705/16/a9070b29-c658-47bc-8807-95b1d700a69f.html?seed=1158178974&lt;br&gt;你还在为这个问题的种种测试,在脑子里跑毕竟会有所遗漏,&lt;br&gt;你想到了什么数,测测吧。

    马里亚诺2

    配合`&lt;source&gt;`标签,可以指定不同格式的源文件以适应不同设备。 4. **链接与导航**:`&lt;a&gt;`元素创建超链接,将用户导向其他页面或资源。`&lt;ul&gt;`、`&lt;ol&gt;`和`&lt;li&gt;`用于创建无序和有序列表,常用于导航菜单。 5. **...

    永恒的通货膨胀和沼泽地猜想

    我们研究在满足最近提出的有关标量场偏移范围| Δϕ | &lt;D&gt; c·V / MP的弦沼泽地区标准的同时,是否实现了永久性通货膨胀,其中D和 c是阶数为1的常数,MP是缩减的普朗克质量。 我们发现,对于c〜O(0.01)和1 / D〜O...

    使用c++实现的回文数猜想程序

    1. 包含必要的头文件,如`#include &lt;iostream&gt;`和`#include &lt;string&gt;`。 2. 定义主函数`int main()`,这是C++程序的入口点。 3. 在主函数内,声明并初始化变量,如起始数、结束数和结果变量。 4. 使用循环遍历指定...

    c++代码 角谷猜想计算过程.docx

    3. `cout&lt;&lt;"角谷猜想"&lt;&lt;endl&lt;&lt;"请输入一个非零自然数"&lt;&lt;endl;`:这两行输出程序名称和用户提示信息。 4. `int a; cin&gt;&gt;a;`:定义一个整型变量`a`,并从用户那里读取一个输入值。 5. `if(a&lt;1){cout&lt;&lt;"输入错误";...

    vue中的provide/inject的学习使用

    前言 最近在看element-ui的源码,发现了一个这样的属性:inject.遂查看官网provider/inject provider/inject:简单的来说就是在父组件中通过provider来提供变量,然后在子...&lt;childOne&gt;&lt;/childOne&gt; &lt;/div&gt; &lt;/templ

    数学猜想程序

    http://topic.csdn.net/u/20080705/16/a9070b29-c658-47bc-8807-95b1d700a69f.html?seed=2125030740&lt;br&gt;这个页面作者提出的一个数学猜想的测试程序,有发现推翻他的数字的,用这个程序测试。是原来的修正版本,原来...

    II型AdS助焊剂真空中的水垢分离

    我们研究了II型4d AdS定向真空中AdS和Kaluza-Klein(KK)量表的... &lt;mi&gt; N &lt;/ mi&gt; &lt;/ math&gt; $$ \ mathcal {N} $$ =一类中,展示了有效4d理论的天真应用如何导致违反AdS距离猜想的结果。 1个具有10的超对称模型

    关于哥德巴赫猜想的显示

    **哥德巴赫猜想**是数学领域中著名的未解决问题之一,源自18世纪由普鲁士数学家克里斯蒂安·哥德巴赫提出的一个猜想。这个猜想表述为:每一个大于2的偶数都可以表示为两个质数之和。简单来说,就是所有偶数都可以被...

    哥德巴赫猜想.cpp

    哥德巴赫猜想 #include&lt;stdio.h&gt; #include&lt;math.h&gt; main() {int n,m,i,j,k,a,b,s; scanf("%d",&n); if(n&gt;=6&&n%2==0) {for(m=6;m&lt;=n;m+=2) { for(i=3;i&lt;=m/2;i+=2) {k=sqrt(i); for(j=2;j&lt;=k;j++) { a=...

    javascript实现的猜数小嬉戏完整实例代码_.docx

    DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"&gt;、&lt;html xmlns="http://www.w3.org/1999/xhtml"&gt;、&lt;head&gt;、&lt;title&gt;、&lt;script&gt;、&lt;body&gt;等标签。这些标签都是HTML文档的基本组成部分。 Knowledge ...

Global site tag (gtag.js) - Google Analytics