binary文件写 java_如何区分'binary'和'text'文件?

博客讨论了如何区分文件是文本还是二进制,尽管所有文件本质上都是二进制数据。关键在于内容的可读性和处理方式。文本文件通常包含可打印字符,适合在控制台上显示,而二进制文件可能包含不可打印字符,导致乱码。作者提到grep等工具会考虑这种区别。问题集中在如何在Linux系统上识别文件类型,尤其是没有元数据指示文件类型的情况下。解决方案通常涉及检查文件内容,但具体实现并未提供。
摘要由CSDN通过智能技术生成

非正式地,我们大多数人都知道存在“二进制”文件(目标文件,图像,电影,可执行文件,专有文档格式等)和“文本”文件(源代码,XML文件,HTML文件,电子邮件等) .

通常,您需要知道文件的内容才能对其执行任何有用的操作,并且如果编码是“二进制”或“文本”,则形成该视点,这并不重要 . 当然,文件只存储数据字节,因此它们都是“二进制”,而“文本”并不意味着什么,而不知道编码 . 然而,谈论'二进制'和'文本'文件仍然很有用,但为了避免冒犯任何具有这种不精确定义的人,我将继续使用'恐慌'报价 .

但是,有各种工具可以处理各种文件,实际上,您希望根据文件是“文本”还是“二进制”来执行不同的操作 . 这方面的一个例子是在控制台上输出数据的任何工具 . 简单的“文本”看起来很好,很有用 . '二进制'数据会扰乱您的终端,并且通常无法查看 . GNU grep在确定是否应该输出匹配到控制台时至少使用这种区别 .

那么,问题是,如何判断文件是'text'还是'binary'?而且要进一步限制,你如何在类似Linux的文件系统上讲述?我不知道任何文件系统元数据指示文件的'type',所以通过检查文件的内容,我怎么知道它是如何判断它是'text'还是'binary'?为简单起见,我们将'text'限制为可在用户控制台上打印的字符 . 特别是你会如何实现这个? (我认为这是暗示在这个网站上,但我想一般来说,指向现有的代码,这应该是有用的,我应该指定),我不是真的在我可以使用的现有程序之后做什么这个 .

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值