关于‘文件存储格式’和‘文件内容格式’需要掰一掰的那点儿事儿

关于‘文件存储格式’和‘文件内容格式’需要掰一掰的那点儿事儿

太阳火神的美丽人生 (http://blog.csdn.net/opengl_es)

本文遵循“署名-非商业用途-保持一致”创作公用协议

转载请保留此句:太阳火神的美丽人生 -  本博客专注于 敏捷开发及移动和物联设备研究:iOS、Android、Html5、Arduino、pcDuino,否则,出自本博客的文章拒绝转载或再转载,谢谢合作。

先来说个例子,来引用题中的问题,后面会尽可能列出大把的实际存在的关于这俩家伙的事儿,以供参考。

当我们录了一段语音并存成 .wav 文件后,就可以用播放器打开播放出所录到的声音了。

这里抛开细节,我们看与生活贴近的部分:

你说话的声音 ---> 传到我耳杂里:这表明,我听到你说的话了;

你说话的声音 ---> 电话话筒接收到了 ---> 通过电话系统传输到 ---> 另一端的听筒把你的声音播放出来了 ---> 我听到你说的话了;

你说话的声音 ---> 录音机麦克接收到 ---> 存储到磁带上(磁带还有人知道是啥不?!)--->磁带拿给我用录音机播放 ---> 我听到你说的话了;

。。。

还有很多种方式,我能听到你说话的声音,仅以上面三个为例,其中涉及到一个主体和两个载体:

主体:

声音,包括你说话发出的声音,也即空气振动;还有我听到的声音,也是空气振动;

第一载体:

你说出来的把空气振动起来,我听到是,振动的空气传入我的耳杂,起始两处无可厚非,差别在于,如何延伸这个空气的振动,或者说能让这个振动被记录下来,在需要的时侯,再原样振起来。

第二截体:

完全针对空气振动的一种记录承载。

回归正题,空气振动产生声波,声波通过定时采样声振强度值这个模拟量,再用数值来表示,就是这一时刻的声音;当连续的采样按采样频率原样再展现出来,也即挠动空气也达到同样的指标,人们的耳杂就能从这些间断的声振中恢复出内容来,越密,越和原声音相仿。

这些间断的数值存储到一个文件中,以便能长期存储,并且文件头描述着这些声音采样的一些信息。

这段中涉及到两个内容:声音是如何采样并量化的,这是一个原始的数据,而另一个是这些数据存储到磁盘文件,所带的文件头描述信息。

原始的声音数据这样存在文件中会很大,所以出现了很多对声音进行编码的算法,按这样的算法对声音处理之后,声音所占空间很小了,按同一算法的逆运算恢复出来的原始声音数据同样能听出原声音的内容,只不过这个过程,会有声音细节的损失。

而同样的声音数据,无论是原始的,还是经过一定算法处理后的声音数据,可以按特定的文件存储格式要求写到文件中。

实在写不下去啦,墨迹了半天,就那点儿事儿,可是还是感觉细节描述不出来。。。

那么再看看文本中存储的内容,也包括两方面:一是文本的编码,如果就一种的话,就不会出现打开文件有乱码的情况了;二是文本的存储格式,是txt还是word,又或者 pdf,就那几个字,存成的文件类型确可以不一样,而文字编码也可以不一样。

再有视频、图片等等,这些都和人的感观相联系着,或者未来还会出现振动或触觉的采样与存储,或者嗅觉?!。。。

用个生动的生活例子再比较一下:

买了一块水豆腐,放在一个磁盘儿里,放到一个碗里,或者直接放锅里?!。。。都行

而这块豆腐,是整块放,还是切四掰儿再放,又或者冻完再化了放,化了切成小块儿再放?!。。。都行

豆腐是文本、语音、图片、视频;容器就是存储格式。

好了,再掰下去,我自已可能就该不明白了,毕竟,我们接触这些事物是从感性到理论,而不是像我们从初中开始学英语,到大学毕业,一直都是先理性后感性,又或者到头来一直没感性起来,见外国人,不知说啥,可是考试打个百八十分都很轻松。

以上闲来扯淡,下面有空儿再补一补各种文字、音频、图像、视频。。。所常用的格式及对应的识别。

这些是从 speex 和 ogg 联想到的,希望有人会知道这两个东西是什么,期待着视频领域的 speex 和 ogg  !@

时间: 2024-10-04 02:09:59

关于‘文件存储格式’和‘文件内容格式’需要掰一掰的那点儿事儿的相关文章

XMLSchema.xsd 文件约束xml文档格式内容

XMLSchema.xsd 文件,用来约束xml内容格式的. <?xml version="1.0" encoding="utf-8"?> <xs:schema id="XMLSchemaLettle" targetNamespace="http://www.pukuimin.com/XMLSchemaLettle.xsd" elementFormDefault="qualified" x

jsp中按照doc文件的内容格式显示出来

问题描述 jsp中按照doc文件的内容格式显示出来 jsp上显示doc内容,获取内容的结果是一堆字符串,没有按照doc文件中的内容格式显示 出来,怎么才能让它按照doc文件中内容格式显示出来 解决方案 linux下doc,ppt等文件转换成swf格式 解决方案二: http://blog.csdn.net/zorro1x1/article/details/6336689 解决方案三: 像百度的做法是将word文档转换为pdf文件,然后将pdf文件转换为swf文件.需要了解具体的操作细节可以发我邮

WPS演示文件怎么转换成ppt格式的doc文件?

  WPS演示文件怎么转换成ppt格式的doc文件?          1.在计算机桌面的Wps演示图标上双击鼠标左键,将其打开运行.在运行的Wps演示程序中,打开需要编辑或者修改的PPT文稿.如图所示; 2.在打开的Wps文稿窗口,依次点击"Wps演示"-->"另存为"-->"转为WPS文字文档"选项.如图所示; 3.点击转为WPS文字文档选项后,这个时候会打开"转为WPS文字文档"对话框.如图所示; 4.在转为

如何判定pdf文件和excel文件里面无内容。。。求大神指导

问题描述 最近遇到一个如何判定pdf文件和excel文件里面无内容的问题...返回一个pdf文件和excel文件..如何判断里面没内容啊..有人会说用file.length()方法..这个方法是做不到的.因为两种文件即使没有内容.他还是有大小的..因为里面保存了格式数据.有其他简单的判断方法么? 解决方案 解决方案二:用jar包应该有提供方法...解决方案三:引用1楼u011559804的回复: 用jar包应该有提供方法... 什么jar包啊..poi和itext这种?..去都文件判断?解决方案

编程-一个用java操作文件并修改文件的内容的问题

问题描述 一个用java操作文件并修改文件的内容的问题 假设一个项目里有n个文件,n个文件中有n个无用的注释,这些注释都是这种格式的 /*无效资源开始 System.out.println("无效的内容"); 无效资源结束*/ 怎么才能通过java,把这些注释都删除掉? 解决方案 大概思路:以一个文件为例,依次读出文件中的内容,检查以"/*"开始,以"*/"结束的字符串,如果和给定注释内容相同就删除注释,至于程序,慢慢斟酌吧. 解决方案二: 正则

数据挖掘-如何将.names文件和.data文件的内容合并转换成arff或者csv

问题描述 如何将.names文件和.data文件的内容合并转换成arff或者csv 在UCI中下载的数据都是.names 和 .data 我想导入weka中进行分析 怎么使用呀? 解决方案 如何将PPT文件转换成PDF文件 解决方案二: 好像有个File. Replace 方法 剩下的应该没问题了

linux比较文件输出不同的内容

linux比较文件输出不同的内容 目前据我所了解的有如下几种方法,来比较两个文件的行,以输出他们的不同之处: 1) comm mission: comm [-123] file1 file2 [> sfile] NOTE: file1,file2 must be firstly sorted ! -1/2/3 means: -1 ----- rid the only retained contents in file1 -2 ----- rid the only retained content

在电脑中如何将高版本的AutoCAD文件保存为低版本格式

  在电脑中如何将高版本的AutoCAD文件保存为低版本格式         方法一: 1.打开文件后点击左上角的"文件"--"另存为"; 2.在弹出"图形另存为"对话框中,设置文件名,然后点击"文件类型"下拉框,从中选择低版本的cad文件保存格式,点击保存即可. 方法二: 1.打开CAD后,点击菜单栏中的"工具"--"选项"; 2.或者直接在命令中输入"OP",并按

Mac上zip文件解压出cpgz格式的文件该怎么办?

  Mac上zip文件解压出cpgz格式的文件该怎么办? 问题原因: 首先,我们分析导致这种情况的原因有以下几点: 1.zip文件已经损坏; 2.zip文件下载时没有下载完全; 3.浏览器在下载或者下载完成zip文件时,对其进行了错误处理; 4.bug导致. 校验文件: 解决这个zip-cpgz循环有多种方法,首先你可以验证一下你的zip文件md5 hash或者SHA1(这些数据一般可以在你下载的网页上边扎到),如果校验显示不同,说明你的文件有损坏或者下载不完全. 1.校验MD5 hash方法: