Java 判断文件是否为文本文件及获取文件编码格式的两个方法。

我们经常会遇到读取文件内容的情况,就需要判断文件是否为文本文件,及文件编码格式,防止乱码出现。
根据文件扩展名判定不太准确,可能会遇到未知扩展名或被修改了扩展名,下面的测试类使用文件头来判断,两个方法是:
1、判断文件是否为文本格式的文件 - isText

FileInputStream fin = new FileInputStream(file);
long len = file.length();
for (int j = 0; j < (int) len; j++) {
    int t = fin.read();
    if (t < 32 && t != 9 && t != 10 && t != 13) {
        isText = false;
        break;
    }
}

2、获取文件的编码格式 - getFilecharset

BufferedInputStream bis = new BufferedInputStream(new FileInputStream(sourceFile));
bis.mark(0);
int read = bis.read(first3Bytes, 0, 3);

完整代码请到实例中心免费查看和获取 Java 判断文件是否为文本文件及获取文件编码格式的方法实例

本文系作者在时代Java发表,未经许可,不得转载。

如有侵权,请联系nowjava@qq.com删除。

编辑于

关注时代Java

关注时代Java