/*** 获取文件的编码格式* @param file* @return*/public String GetCharset(File file) {String charset = "GBK";byte[] first3Bytes = new byte[3];try {boolean checked = false;//BufferedInputStream bis = new BufferedInputStream(//new FileInputStream(file));//bis.mark(0);//int read = bis.read(first3Bytes, 0, 3);InputStream is = new FileInputStream(file);int read = is.read(first3Bytes, 0, 3);if (read == -1)return charset;//Log.i(TAG,"[GetCharset]first3Bytes[0]:"+first3Bytes[0]+", first3Bytes[1]:"+first3Bytes[1]+",first3Bytes[2]:"+first3Bytes[2]);if (first3Bytes[0] == (byte) 0xFF && first3Bytes[1] == (byte) 0xFE) {charset = "UTF-16LE";checked = true;} else if (first3Bytes[0] == (byte) 0xFE&& first3Bytes[1] == (byte) 0xFF) {charset = "UTF-16BE";checked = true;} else if (first3Bytes[0] == (byte) 0xEF&& first3Bytes[1] == (byte) 0xBB&& first3Bytes[2] == (byte) 0xBF) {charset = "UTF-8";checked = true;}else if (first3Bytes[0] == (byte) 0xA&& first3Bytes[1] == (byte) 0x5B&& first3Bytes[2] == (byte) 0x30) {charset = "UTF-8";checked = true;}else if (first3Bytes[0] == (byte) 0xD&& first3Bytes[1] == (byte) 0xA&& first3Bytes[2] == (byte) 0x5B) {charset = "GBK";checked = true;}else if (first3Bytes[0] == (byte) 0x5B&& first3Bytes[1] == (byte) 0x54&& first3Bytes[2] == (byte) 0x49) {charset = "windows-1251";checked = true;}//bis.reset();InputStream istmp = new FileInputStream(file);if (!checked) {int loc = 0;while ((read = istmp.read()) != -1) {loc++;if (read >= 0xF0)break;if (0x80 <= read && read <= 0xBF)break;if (0xC0 <= read && read <= 0xDF) {read = istmp.read();if (0x80 <= read && read <= 0xBF)continue;elsebreak;} else if (0xE0 <= read && read <= 0xEF) {read = istmp.read();if (0x80 <= read && read <= 0xBF) {read = istmp.read();if (0x80 <= read && read <= 0xBF) {charset = "UTF-8";break;} elsebreak;} elsebreak;}}}is.close();istmp.close();} catch (Exception e) {e.printStackTrace();}return charset;}

java获取文本文件的编码格式相关推荐

  1. 用Java实现文本文件其他编码格式转UTF-8编码格式

    最近把播放器的固件升级了,结果歌词全部变成了乱码,中文出现乱码基本都是编码格式的问题. 一个一个的手动修改太麻烦了,就写了一个简单的java代码来实现批量转换一下. 主要完成的 import info ...

  2. java获取字符的编码_java获取文本文件字符编码的方法

    java获取文本文件字符编码的方法 发布时间:2020-06-16 09:56:08 来源:亿速云 阅读:386 作者:Leah 这篇文章将为大家详细讲解有关java获取文本文件字符编码的方法,小编觉 ...

  3. java 获取记事本的行数_C++ 获取文本文件的行数

    Java一次读取文本文件所有内容 标签: java encoding string file byte null 2011-08-18 11:24 6793人阅读 评论(0) 收藏 举报 本文章已收录 ...

  4. java判断文本文件编码格式

    上篇文章需要读取当前java或者配置文件的编码格式,这里主要支持UTF-8.GBK.UTF-16.Unicode等 /*** 判断文件的编码格式* @param fileName :file* @re ...

  5. java获取文件编码

    目录 1. 概述 2. 编码基本知识 2.1. iso8859-1 2.2. GB2312/GBK 2.3. unicode 2.4. UTF 3.JAVA中移位运算>> , <&l ...

  6. java解压服务器文件夹,java获取远程服务器上的文件夹

    java获取远程服务器上的文件夹 内容精选 换一换 安装X722板载网卡驱动软件包,使裸金属服务器支持在v5服务器上下发.其他类型服务器可跳过此步骤.本文以Windows Server 2016为例, ...

  7. java获取文件列表,[javaSE] java获取文件列表

    递归测试 import java.io.File; import java.util.ArrayList; import java.util.HashMap; import java.util.Lis ...

  8. java获取长度_获取java长度

    Java获取本机MAC地址 为什么写这个呢?因为前几天看见网上有采用windows命令获取局域网和广域网MAC,查了查可以直接用JDK的方法. MAC可用于局域网验证,提高安全性. import ja ...

  9. 文件------概念、基本操作、打开文件的方式、按行读取文件内容、复制文件、文件/目录的常用管理操作、文本文件的编码格式、练习1-4

    文件的概念 文件的概念 计算机的文件,就是存储在某种长期储存设备上的一段数据 长期存储设备包括:硬盘.U盘.移动硬盘.光盘... 文件的作用 将数据长期保存下来,在需要的时候使用 文件的存储方式 在计 ...

  10. java 获取电脑唯一编码_java获取页面编码

    最近研究抓取网页内容,发现要获取页面的编码格式,Java没有现成的实现方法..只能自己写了 codeimport info.monitorenter.cpdetector.io.CodepageDet ...

最新文章

  1. EF 从sqlserver2008 迁移到 2005出现的BUG
  2. 明白了为什么java方法上面为什么要加个@符号
  3. ubuntu server 12.04中文显示不完整
  4. Python统计Excel文件中超市营业额明细数据
  5. 无需无线路由,将系统为win7的笔记本变成wifi的方法
  6. ajax应用培训ppt,《ajax培训课件.ppt
  7. 移动魔百和系统升级服务器地址,【当贝市场】移动魔百盒升级后无法观看视频怎么办...
  8. EDA发展历史及现状
  9. GD32单片机介绍——兆易创新
  10. 图书管理系统项目开发计划书
  11. matlab的方法定义变量,Matlab定义变量怎么操作?定义变量方法介绍
  12. 三天两夜,1M图片优化到100kb/肝都熬爆了
  13. 如何用cmd打开管理员模式
  14. css图片菜鸟教程,css 常用样式(分享)
  15. 2020年下半年网络工程师下午真题及答案
  16. uniapp调用android原生方法
  17. 使用 Chrome DevTools 模拟缓慢的 3G 网络速度
  18. 开发一个标题为Flipflop的游戏应用程序
  19. android sqlite fts4,SQLite FTS4使用首选语言
  20. SDWAN:直接互联网接入 (DIA)

热门文章

  1. carrot2 融入自己的中文分词器
  2. 超简单实现的C语言关机恶搞小程序
  3. 如何建语料库_语料库-如何建设语料?如何建设语料库 爱问知识人
  4. 草根站长胖子讲述做站故事
  5. midi转简谱_音乐小技巧分享:五线谱转简谱与MIDI的快速方法
  6. 零基础在Linux环境安装Cadence系列软件
  7. 吉他扒谱该怎么做?分享一款超好用的扒谱工具!
  8. vc2013使用经验
  9. 遥感数据下载网站汇总
  10. python写给初学者的一封信