首页 > 其他分享 >文本文件与二进制文件理解

文本文件与二进制文件理解

时间:2022-12-18 22:44:25浏览次数:38  
标签:文件 编码 字符 二进制 Base64 文本文件

转自:https://www.cnblogs.com/zhangjiankun/archive/2011/11/27/2265184.html

1.介绍 

计算机的存储在物理上是二进制的,所以文本文件与二进制文件的区别并不是物理上的,而是逻辑上的。这两者只是在编码层次上有差异。

文本文件是基于字符编码的文件,常见的编码有ASCII编码,UNICODE编码等等。二进制文件是基于值编码的文件,你可以根据具体应用,指定某个值是什么意思。

文本文件基本上是定长编码的(也有非定长的编码如UTF-8)。而二进制文件可看成是变长编码的,因为是值编码嘛,多少个比特代表一个值,完全由你决定。 

一般认为,文本文件编码基于字符定长,译码容易些;二进制文件编码是变长的,所以它活,存储利用率要高些,译码难一些(不同的二进制文件格式,有不同的译码方式)。 

解释方式不同。

2. base64编码

https://www.liaoxuefeng.com/wiki/1016959663602400/1017684507717184

Base 家族常见的有 Base64, Base32, Base16 三种编码,他们的编码规则大致相同,最常用的是 Base64 编码。base 系列编码并不属于字符编码,他们主要用于把一串“无意义的”八位二进制字节编码为可见 ASCII 字符

用记事本打开exejpgpdf这些文件时,我们都会看到一大堆乱码,因为二进制文件包含很多无法显示和打印的字符,所以,如果要让记事本这样的文本处理软件能处理二进制数据,就需要一个二进制到字符串的转换方法。Base64是一种最常见的二进制编码方法。

具体原理再理解吧。

标签:文件,编码,字符,二进制,Base64,文本文件
From: https://www.cnblogs.com/BlueBlueSea/p/16991115.html

相关文章

  • Python 大数据量文本文件高效解析方案代码实现
    大数据量文本文件高效解析方案代码实现测试环境Python3.6.2Win10内存8G,CPUI51.6GHz背景描述这个作品来源于一个日志解析工具的开发,这个开发过程中遇到的一......
  • vue3+ts项目中无法识别vue文件
    在vue3+ts的项目中,如果缺少声明文件,会出现类似于下面的报错。只需要在src的根目录下创建一个声明文件:env.d.ts,就可以解决这个报错。代码内容如下:declaremodule"*.......
  • 二进制安装mysql
    下载地址https://downloads.mysql.com/archives/community/将下载好的二进制安装包放到服务器上$ll-h总用量636M-rw-r--r--1rootroot636M5月113:11mysq......
  • 关于 'vue-cli-service' 不是内部或外部命令,也不是可运行的程序 或批处理文件 的处
    关于npmrunserve之后 'vue-cli-service'不是内部或外部命令,也不是可运行的程序或批处理文件一、安装node.js去官网安装Node.js(地址:https://nodejs.org/en/): ......
  • Linux 文件基本属性
    Linux 文件基本属性全文摘自:https://www.runoob.com/linux/linux-file-attr-permission.htmlLinux系统是一种典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限......
  • 003 写入文本文件
    提供三个写入文本文件的函数。publicstaticbooleanwriteStringToTextFile(Stringcontent,StringfilePath,Charsetcharset)1publicstaticbooleanwriteStr......
  • 使用 udev 高效、动态地管理 Linux 设备文件(转载)--2
    清单6.简单说明键值对的例子KERNEL是匹配键,NAME和MODE是赋值键。这条规则的意思是:如果有一个设备的内核设备名称为sda,则该条件生效,执行后面的赋值:在 ​​/dev​​下......
  • 使用PoEdit翻译PO文件(转贴)
    使用wordpress及其众多的主题或插件时,如果需要汉化,我们就会用到PO文件和MO文件。其中PO文件是一个翻译列表,可以编辑,MO文件由PO文件按生成,供程序读取。这是Wordpress利用GNU......
  • ubuntu 二进制部署k8s 1.21版本
    #1.修改主机名hostnamectlset-hostnamek8s-master01hostnamectlset-hostnamek8s-node01hostnamectlset-hostnamek8s-node02#2.主机名解析cat>>/etc/host......
  • earmusic任意文件读取漏洞[代码审计]
    怎么发现的,我也不懂啊。师傅怎么说,我跟着照做,毕竟技术不到位啊。功能点分析,反正这个下载的按钮可以存在漏洞。复现过程概述这个漏洞产生在用户端,首先去注册一个用户......