《自拍教程7》两种文件类型

2023-10-23 22:10

本文主要是介绍《自拍教程7》两种文件类型,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

计算机只认识0,1,所以计算机的世界,
所有的文件数据都应该是0,1组成的。
但是为了方便人类能阅读及理解,
逐步有了ASCII,UTF-8, GBK, GB2312等编码格式。
以上如果测试同学听晕乎,记住以下两种计算机文件的类型即可。

纯文本文件

人类可以识别的文字文本文件,
其文件以纯文本形式存储数据(数字和字母包括ASCII码和其他各国语言文字)。
纯文本意味着该文件是一个字符序列,不含必须像二进制数字那样被解读的数据,
以Windows操作系统为例,包括:

纯文本文件种类文件后缀
记事本文本文件.txt
文本配置文件.cfg, .ini
逗号分隔符文件.csv
Log文件.log
Python代码文件.py
Java代码文件.java
C, C++代码文件.c, .cpp, .h
shell脚本文件.sh
batch脚本文件.bat, .cmd
html网页文件.html, .htm
xml配置文件.xml
json配置文件.json

二进制文件

机器码文件,即计算机能识别并直接可以运行的文件,
但是人类不能直接识别,只能通过其他软件来解析识别的文件,以Windows系统为例包括:

二进制文件种类文件后缀
可执行文件.exe
视频文件.mp4, .3gp等
音频文件.mp3, .wma等
图片文件.jpg, .png等
Word文件.doc, .docx,.wps
Excel文件.xls, .xlsx
PPT文件.ppt, .pptx
PDF文件.pdf
安装包文件.msi
压缩包文件.zip, .rar等
编译后的Python代码文件.pyc, pyo等
编译后的Java代码文件.class
编译后的C++代码文件.obj

如何快速鉴别文件类型。

使用Sublime文本编辑器或者Notepad++这类文本编辑器,尝试打开一个文件。
查看其内容。
查看纯文本文件:
如果显示的是人类能看懂的字符(英文字母,标点符号,中文,繁体,日语,韩语等等世界各国语言),
当然也可能是乱码(是由于编码格式转码导致的,比如当前编辑器不支持GBK, 则可能导致中文变乱码)。

查看二进制文件
如果显示的一堆整齐的16进制数据,则就是二进制可执行文件。
由于二进制文件只有1,0,直接存储0,1数量较大,且不方便阅读,
所以统一显示为16进制的,以方便存储与阅读,真正需要解析的时候,
肯定要转化成0,1的二进制序列才能被机器所处理。

Linux操作系统下其实一样,虽然Linux不带后缀,也可用Sublime打开看看

纯文本文件的优势

序号二进制可执行文件的优势
优势一人类可识别,可快速看懂
优势二方便配置,比如linux下vi就可以编辑这些文件,cat就可以查看这些文件,
Windows记事本就可以编辑这些文本。
优势三很容易创建,比如你创建一个.txt并编辑很简单。
你创建并编辑一个.mp4视频并实现成功播放试试??
二进制可执行文件的优势
序号二进制可执行文件的优势
优势一可以直接被计算机识别并执行。
优势二体积小,基本上都是编译压缩过。
优势三信息传输安全,人类看不懂,比如源代码文件,
一般是编译后给到编译后的二进制可执行文件发布出去,比如.exe的
一般不会把源代码直接发布出去。
优势四可以丰富多样化,可以组成声音,图像等数据。

学过python open()函数的都知道,用于打开文件进行读写。
其有多种模式,比如“w”,“r”模式是针对普通纯文本文件的读写操作。
“wb”, “rb”模式是针对二进制文件的读写操作。
只要是涉及二进制的,则必须加“b", 代表”binary“二进制文件操作。

更多更好的原创文章,请到:www.zipython.com

原文链接:https://www.zipython.com/#/detail?id=7210086251064f5bac985f73f2b1eb73
也可关注“武散人”微信订阅号,随时接受文章推送。

这篇关于《自拍教程7》两种文件类型的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/270746

相关文章

C#使用StackExchange.Redis实现分布式锁的两种方式介绍

《C#使用StackExchange.Redis实现分布式锁的两种方式介绍》分布式锁在集群的架构中发挥着重要的作用,:本文主要介绍C#使用StackExchange.Redis实现分布式锁的... 目录自定义分布式锁获取锁释放锁自动续期StackExchange.Redis分布式锁获取锁释放锁自动续期分布式

springboot使用Scheduling实现动态增删启停定时任务教程

《springboot使用Scheduling实现动态增删启停定时任务教程》:本文主要介绍springboot使用Scheduling实现动态增删启停定时任务教程,具有很好的参考价值,希望对大家有... 目录1、配置定时任务需要的线程池2、创建ScheduledFuture的包装类3、注册定时任务,增加、删

Windows 上如果忘记了 MySQL 密码 重置密码的两种方法

《Windows上如果忘记了MySQL密码重置密码的两种方法》:本文主要介绍Windows上如果忘记了MySQL密码重置密码的两种方法,本文通过两种方法结合实例代码给大家介绍的非常详细,感... 目录方法 1:以跳过权限验证模式启动 mysql 并重置密码方法 2:使用 my.ini 文件的临时配置在 Wi

如何为Yarn配置国内源的详细教程

《如何为Yarn配置国内源的详细教程》在使用Yarn进行项目开发时,由于网络原因,直接使用官方源可能会导致下载速度慢或连接失败,配置国内源可以显著提高包的下载速度和稳定性,本文将详细介绍如何为Yarn... 目录一、查询当前使用的镜像源二、设置国内源1. 设置为淘宝镜像源2. 设置为其他国内源三、还原为官方

Maven的使用和配置国内源的保姆级教程

《Maven的使用和配置国内源的保姆级教程》Maven是⼀个项目管理工具,基于POM(ProjectObjectModel,项目对象模型)的概念,Maven可以通过一小段描述信息来管理项目的构建,报告... 目录1. 什么是Maven?2.创建⼀个Maven项目3.Maven 核心功能4.使用Maven H

IDEA自动生成注释模板的配置教程

《IDEA自动生成注释模板的配置教程》本文介绍了如何在IntelliJIDEA中配置类和方法的注释模板,包括自动生成项目名称、包名、日期和时间等内容,以及如何定制参数和返回值的注释格式,需要的朋友可以... 目录项目场景配置方法类注释模板定义类开头的注释步骤类注释效果方法注释模板定义方法开头的注释步骤方法注

Python虚拟环境终极(含PyCharm的使用教程)

《Python虚拟环境终极(含PyCharm的使用教程)》:本文主要介绍Python虚拟环境终极(含PyCharm的使用教程),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录一、为什么需要虚拟环境?二、虚拟环境创建方式对比三、命令行创建虚拟环境(venv)3.1 基础命令3

使用Node.js制作图片上传服务的详细教程

《使用Node.js制作图片上传服务的详细教程》在现代Web应用开发中,图片上传是一项常见且重要的功能,借助Node.js强大的生态系统,我们可以轻松搭建高效的图片上传服务,本文将深入探讨如何使用No... 目录准备工作搭建 Express 服务器配置 multer 进行图片上传处理图片上传请求完整代码示例

Android实现打开本地pdf文件的两种方式

《Android实现打开本地pdf文件的两种方式》在现代应用中,PDF格式因其跨平台、稳定性好、展示内容一致等特点,在Android平台上,如何高效地打开本地PDF文件,不仅关系到用户体验,也直接影响... 目录一、项目概述二、相关知识2.1 PDF文件基本概述2.2 android 文件访问与存储权限2.

Python获取C++中返回的char*字段的两种思路

《Python获取C++中返回的char*字段的两种思路》有时候需要获取C++函数中返回来的不定长的char*字符串,本文小编为大家找到了两种解决问题的思路,感兴趣的小伙伴可以跟随小编一起学习一下... 有时候需要获取C++函数中返回来的不定长的char*字符串,目前我找到两种解决问题的思路,具体实现如下: