java – 如何检查文件是否是纯文本?
在我的程序中,用户可以加载带有链接的文件(它是一个webcrawler),但是我需要验证用户选择的文件是纯文本还是其他东西(只允许纯文本).
有可能这样做吗?如果有用,我正在使用JFileChooser打开文件. 编辑: 用户期望的是:包含URL的文本文件. 我想避免的:用户从MS Word加载MP3文件或文档(示例). 解决方法
一个文件只是一系列字节,没有进一步的信息,你无法分辨这些字节是否应该是某些字符串编码中的代码点(比如ASCII或UTF-8或ANSI-something)或其他东西.您将不得不求助于启发式,例如:
>尝试使用许多已知编码解析文件,并查看解析是否成功.如果是的话,你可能有一个文本文件. 但这是另一种解决方案:只需将您收到的所有内容视为文本,在需要时应用必要的转换(例如,在发送到Web浏览器时进行HTML编码).只要您阻止将文件解释为二进制数据(例如用户双击该文件),您将产生的最糟糕的数据就是乱码数据. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |