[Ubuntu-zh] 想请教下究竟为什么二进制数据文件使用效率比可读文件高呢?

Earthson earthson.landy在gmail.com
星期二 九月 13 04:21:00 UTC 2011


对数据来说,二进制存储的方案会更紧凑。比如一个8位整数,二进制用4个字节,文本需要8个字节。但是,对普通字符来说,其实两者是差不多的。
二进制保存结构比较复杂的文件,是需要各种头信息的,这会额外占用空间。手动操作二进制文件需要额外维护这些信息,相比之下,文本文件的维护简单太多了。
UNIX的哲学是鼓励使用文本文件的。

2011/9/12 tvdbukrf inuyasha <4entertrifle在gmail.com>

> 握爪~我就是这么想所以有此一问~
>
> On Monday, September 12, 2011, An Yang wrote:
>
> > 读文件的速度,和获取文件中信息的速度,完全是两个概念。
> >
> > 在 2011-09-12一的 22:52 +0800,tvdbukrf inuyasha写道:
> >
> > > 据说因为二进制比较紧凑而且储存形式跟内存中的一样所以确实快些?
> > >
> > > On Monday, September 12, 2011, An Yang wrote:
> > >
> > > > 读什么文件,速度都是一样的,但处理里面的内容,就会因内容而异了。
> > > >
> > > > 在 2011-09-12一的 20:39 +0800,tvdbukrf inuyasha写道:
> > > >
> > > > > 编的一个程序一直都是用别的程序导出的可读文件作为数据文件,最近有人建议我直接把那个程序的数据文件给unpack效率会更高。
> > > > > 但为什么高又不甚清楚,Google一番后也没找到什么答案,因此冒昧的在这提问下,虽然跟ubuntu没啥关系就是~~
> > > > >
> > > > > 比如用python
> > > > > 我想如果是可读文件,直接就能拿来用了,比如readline起来挺方便的。
> > > > >
> > > > >
> > > >
> >
> 如果是二进制文件,读取起来确实是比可读文件快,可是似乎没太多办法去操作,最简单的四则运算都觉得挺麻烦,似乎也没啥module?得搞清楚数据结构后再struct.unpack。
> > > > > 这样下来难道后者就一定比前者快么?
> > > > >
> > > > > 声明本人编程水平算是入门中的入门,所以问题弱智了的话请大家见笑:)
> > > > > -------------- 下一部分 --------------
> > > > > 一个HTML附件被移除...
> > > > > URL: <
> > > >
> >
> https://lists.ubuntu.com/archives/ubuntu-zh/attachments/20110912/e5157336/attachment.html
> > > > >
> > > >
> > > >
> > > > -------------- 下一部分 --------------
> > > > 一个HTML附件被移除...
> > > > URL: <
> > > >
> >
> https://lists.ubuntu.com/archives/ubuntu-zh/attachments/20110912/2c8406bd/attachment.html
> > > > >
> > > > -------------- 下一部分 --------------
> > > > A non-text attachment was scrubbed...
> > > > Name: signature.asc
> > > > Type: application/pgp-signature
> > > > Size: 490 bytes
> > > > Desc: 这是信件的数字签名部分
> > > > URL: <
> > > >
> >
> https://lists.ubuntu.com/archives/ubuntu-zh/attachments/20110912/2c8406bd/attachment.pgp
> > > > >
> > > > --
> > > > ubuntu-zh mailing list
> > > > ubuntu-zh在lists.ubuntu.com <javascript:;> <javascript:;>
> > > > https://lists.ubuntu.com/mailman/listinfo/ubuntu-zh
> > > >
> > > -------------- 下一部分 --------------
> > > 一个HTML附件被移除...
> > > URL: <
> >
> https://lists.ubuntu.com/archives/ubuntu-zh/attachments/20110912/5b7459ff/attachment.html
> > >
> >
> >
> > -------------- 下一部分 --------------
> > 一个HTML附件被移除...
> > URL: <
> >
> https://lists.ubuntu.com/archives/ubuntu-zh/attachments/20110912/7596f78b/attachment.html
> > >
> > -------------- 下一部分 --------------
> > A non-text attachment was scrubbed...
> > Name: signature.asc
> > Type: application/pgp-signature
> > Size: 490 bytes
> > Desc: 这是信件的数字签名部分
> > URL: <
> >
> https://lists.ubuntu.com/archives/ubuntu-zh/attachments/20110912/7596f78b/attachment.pgp
> > >
> > --
> > ubuntu-zh mailing list
> > ubuntu-zh在lists.ubuntu.com <javascript:;>
> > https://lists.ubuntu.com/mailman/listinfo/ubuntu-zh
> >
> -------------- 下一部分 --------------
> 一个HTML附件被移除...
> URL: <
> https://lists.ubuntu.com/archives/ubuntu-zh/attachments/20110912/976d4a50/attachment.html
> >
> --
> ubuntu-zh mailing list
> ubuntu-zh在lists.ubuntu.com
> https://lists.ubuntu.com/mailman/listinfo/ubuntu-zh
>



-- 

                                    这个世界不会因为没有你而失去什么
但是,却有可能因为你的存在而发生一些改变。。
-------------- 下一部分 --------------
一个HTML附件被移除...
URL: <https://lists.ubuntu.com/archives/ubuntu-zh/attachments/20110913/529d8df8/attachment.html>


关于邮件列表 ubuntu-zh 的更多信息