linux如何判断文本文件,请教个问题,Linux下如何区分二进制文件和文本文件?...

请教个问题,Linux下如何区分二进制文件和文本文件?

(2012-04-13 07:22:09)

标签:

文本文件

二进制

linux

如何

杂谈

请教个问题,Linux下如何区分二进制文件和文本文件?RT,我想全文索引硬盘中的文本文件(包括程序文件、脚本、txt等等),但如果是二进制文件就不进行索引了。

所以我想问问如何区分文本文件和二进制文件呢?file命令原帖由 cjaizss 于 2007-5-1 22:59 发表

file命令

是个什么原理呢?

用程序读http://www.3wanmei.com的时候通过什么来判断啊?原帖由 cugb_cat 于 2007-5-1 23:06

发表

是个什么原理呢?

用程序读的时候通过什么来判断啊?

file命令一般调用库函数实现,核心算法比判断是“文本文件”还是“二进制文件”复杂。

其实要解决你的问题,其思路并不难,想想“ASCII文本文件”的定义,不就搞定了?

既然已经有现成的file命令,file+grep就可以搞定了http://www.51banyun.com,使用shell的话,就不用像C那么费事啦原帖由

cjaizss 于 2007-5-1 23:12 发表

file命令一般调用库函数实现,核心算法比判断是“文本文件”还是“二进制文件”复杂。

其实要解决你的问题,其思路并不难,想想“ASCII文本文件”的定义,不就搞定了?

既然已经有现成的file命令,file+grep就 ...

不用shell的,需要用C实现,不只是判断二进制文件和文本文件,还要把视频、图片等过滤掉,当然,压缩包也暂时不考虑~

ASCII文件的定义是不是指包含的都是可打印字符?如果是这样的话,如果二进制文件中包含可打印字符怎么办?原帖由 cugb_cat 于

2007-5-1 23:20 发表

不用shell的,需要用C实现,不只是判断二进制文件和文本文件,还要把视频、图片等过滤掉,当然,压缩包也暂时不考虑~

ASCII文件的定义是不是指包含的都是可打印字符?如果是这样的话,如果二进制文件中包含可 ...

文件都是二进制的,所谓的“二进制文件”应该是指本意不是用来当文本文件存储的文件。

如果一个本意不是拿来当文本存储的文件正好每个字符都是可打印的,被识别成了文本文件,那也是没办法的事情。原帖由 cugb_cat 于

2007-5-1 23:06 发表

是个什么原理呢?

用程序读的时候通过什么来判断啊?

直接看 file 的源码。原帖由 MMMIX 于 2007-5-1 23:26

分享:

a4c26d1e5885305701be709a3d33442f.png喜欢

0

a4c26d1e5885305701be709a3d33442f.png赠金笔

加载中,请稍候......

评论加载中,请稍候...

发评论

登录名: 密码: 找回密码 注册记住登录状态

昵   称:

评论并转载此博文

a4c26d1e5885305701be709a3d33442f.png

发评论

以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值