`

Java 获得文件编码格式<转>

    博客分类:
  • JAVA
 
阅读更多

Java判断文件编码集

/**                                                                              
* 获得远程URL文件的编码格式                                                     
*/                                                                              
public static String getReomoteURLFileEncode(URL url) {                          
   CodepageDetectorProxy detector = CodepageDetectorProxy.getInstance();          
   detector.add(new ParsingDetector(false));                                      
   detector.add(JChardetFacade.getInstance());                                    
   detector.add(ASCIIDetector.getInstance());                                     
   detector.add(UnicodeDetector.getInstance());                                   
   java.nio.charset.Charset charset = null;                                       
   try {                                                                          
    System.out.println(url);                                                     
    charset = detector.detectCodepage(url);                                      
   } catch (Exception ex) {                                                       
    ex.printStackTrace();                                                        
   }                                                                              
   if (charset != null) {                                                         
    return charset.name();                                                       
   } else {                                                                       
    return "utf-8";                                                              
   }                                                                              
}                                                                                
                                                                                  
                                                                                  
/**                                                                              
* 获得文件流的编码格式                                                          
*/                                                                              
public static String getInputStreamEncode(InputStream is) {                      
   CodepageDetectorProxy detector = CodepageDetectorProxy.getInstance();          
   detector.add(new ParsingDetector(false));                                      
   detector.add(JChardetFacade.getInstance());                                    
   detector.add(ASCIIDetector.getInstance());                                     
   detector.add(UnicodeDetector.getInstance());                                   
   java.nio.charset.Charset charset = null;                                       
   try {                                                                          
    charset = detector.detectCodepage(is, 0);                                    
   } catch (Exception ex) {                                                       
    ex.printStackTrace();                                                        
   }                                                                              
   if (charset != null) {                                                         
    return charset.name();                                                       
   } else {                                                                       
    return "utf-8";                                                              
   }                                                                              
}                                                                                
                                                                                  
/**                                                                              
* 获得本地文件的编码格式                                                        
*/                                                                              
public static String getLocalteFileEncode(String filePath) {                     
   CodepageDetectorProxy detector = CodepageDetectorProxy.getInstance();          
   detector.add(new ParsingDetector(false));                                      
   detector.add(JChardetFacade.getInstance());                                    
   detector.add(ASCIIDetector.getInstance());                                     
   detector.add(UnicodeDetector.getInstance());                                   
   java.nio.charset.Charset charset = null;                                       
   File file = new File(filePath);                                                
   try {                                                                          
    charset = detector.detectCodepage(file.toURI().toURL());                     
   } catch (Exception ex) {                                                       
    ex.printStackTrace();                                                        
   }                                                                              
   if (charset != null) {                                                         
    return charset.name();                                                       
   } else {                                                                       
    return "utf-8";                                                              
   }                                                                              
}                                                                                
/**                                                                              
* 获得字符串的编码格式                                                          
*/                                                                              
public static String getStringEncode(String str) {                               
   CodepageDetectorProxy detector = CodepageDetectorProxy.getInstance();          
   detector.add(new ParsingDetector(false));                                      
   detector.add(JChardetFacade.getInstance());                                    
   detector.add(ASCIIDetector.getInstance());                                     
   detector.add(UnicodeDetector.getInstance());                                   
   java.nio.charset.Charset charset = null;                                       
   InputStream myIn=new ByteArrayInputStream(str.getBytes());                     
   try {                                                                          
    charset = detector.detectCodepage(myIn,3);                                   
   } catch (Exception ex) {                                                       
    ex.printStackTrace();                                                        
   }                                                                              
   if (charset != null) {                                                         
    return charset.name();                                                       
   } else {                                                                       
    return "utf-8";                                                              
   }                                                                              
}                                                    
分享到:
评论

相关推荐

    Java JDK实例宝典

    &lt;br&gt;第1章 Java基础 &lt;br&gt;1.1 转换基本数据类型 &lt;br&gt;1.2 Java的运算符 &lt;br&gt;1.3 控制程序的流程 &lt;br&gt;1.4 计算阶乘 &lt;br&gt;1.5 实现命令行程序 &lt;br&gt;第2章 Java面向对象程序设计 &lt;br&gt;2. 1 复数类 &lt;br&gt;2. 2 equals.chashCode...

    Java 获得文件编码格式

    这篇博客“Java 获得文件编码格式”可能讲述了如何在Java中识别和处理各种编码格式的文件。 首先,我们可以通过Java的内置API来读取和分析文件的字节流以推测其编码。`java.nio.charset.Charset`类提供了用于检测...

    mysql5.1中文手册

    新字符集配置文件格式&lt;br&gt;10.9. 国家特有字符集&lt;br&gt;10.10. MySQL支持的字符集和校对&lt;br&gt;10.10.1. Unicode字符集&lt;br&gt;10.10.2. 西欧字符集&lt;br&gt;10.10.3. 中欧字符集&lt;br&gt;10.10.4. 南欧与中东字符集&lt;br&gt;10.10.5. ...

    TCP-IP技术大全

    TCP/IP和Internet 8&lt;br&gt;2.1 一段历史 8&lt;br&gt;2.1.1 ARPANET 8&lt;br&gt;2.1.2 TCP/IP 9&lt;br&gt;2.1.3 国家科学基金会(NSF) 9&lt;br&gt;2.1.4 当今的Internet 12&lt;br&gt;2.2 RFC和标准化过程 12&lt;br&gt;2.2.1 获得RFC 13&lt;br&gt;2.2.2 RFC索引 13&lt;br...

    jsp编程技巧集锦

    数字转中文&lt;br&gt;128 自动计算金额&lt;br&gt;129 JSP页面打印中使用WebBrowser控件&lt;br&gt;130 &lt;select...&gt;不刷新页面添加新的类别&lt;br&gt;131 鼠标滚动缩放图片&lt;br&gt;132 根据输入的表名生成输入数据表格&lt;br&gt;133 JSP表格输出到Excel...

    TCPIP协议详解(4-1)

    TCP/IP和Internet 8&lt;br&gt;2.1 一段历史 8&lt;br&gt;2.1.1 ARPANET 8&lt;br&gt;2.1.2 TCP/IP 9&lt;br&gt;2.1.3 国家科学基金会(NSF) 9&lt;br&gt;2.1.4 当今的Internet 12&lt;br&gt;2.2 RFC和标准化过程 12&lt;br&gt;2.2.1 获得RFC 13&lt;br&gt;2.2.2 RFC索引 13&lt;br...

    MySQL 6 绿色精简BAT版 2.24 MB

    7.1.3 6.6 MB &lt;br&gt;地址1&lt;br&gt; &lt;br&gt;地址2 &lt;br&gt;Navicat for MySQL 英文&lt;br&gt;(Linux版)&lt;br&gt;* 非商业使用 8.0.27 20 MB &lt;br&gt;地址1&lt;br&gt;&lt;br&gt; &lt;br&gt;地址2 &lt;br&gt;&lt;br&gt; &lt;br&gt;&lt;br&gt;MySQL 6 绿色版使用批处理(BAT)文件执行,可以随意...

    SSM某马旅游网笔记

    &lt;artifactId&gt;mysql-connector-java&lt;/artifactId&gt; &lt;version&gt;8.0.31&lt;/version&gt; &lt;/dependency&gt; &lt;!-- 日志 --&gt; &lt;dependency&gt; &lt;groupId&gt;org.slf4j&lt;/groupId&gt; &lt;artifactId&gt;slf4j-log4j12&lt;/artifactId&gt; &lt;version&gt;...

    barcode4j官方发布依赖包

    它支持多种条码格式,如Code 39、EAN、UPC、QR Code等,涵盖了工业、商业和物流领域常见的编码标准。 **项目背景与历史** Barcode4j 的开发始于2002年,由Krysalis项目组创建,后来成为Apache软件基金会的一部分,...

    YOYOPlayer1.1

    希望和大家一起探讨JAVA问题,让JAVA的浓香飘的更远.&lt;br&gt;其实本人也希望打包成ZIP格式,可是ZIP的压缩率没有RAR高,并且blogjava只支持2000KB的文件,所以只能打包成RAR格式的,还望大家见谅.最后,谢谢我的女友YOYO这段...

    java类与xml之间相互转换实例

    在实际项目中,XStream通常用于处理XML配置文件,比如Spring框架中的bean配置,或者在网络通信中将Java对象编码为XML进行传输。它的优点在于简单易用,只需要很少的代码就能完成对象与XML的转换。 通过这个实例,你...

    ProtocolBuffer for java(android)

    ProtoBuf 提供了高效的编码和解码机制,支持多种语言,包括Java、C++、Python等,并且在Android平台上得到了广泛的应用。 ProtoBuf的核心思想是定义一种二进制数据格式,这种格式比XML、JSON等文本格式更紧凑、...

    itext7 html转换为pdf

    &lt;version&gt;7.x.x&lt;/version&gt; &lt;!-- 请替换为最新的版本号 --&gt; &lt;/dependency&gt; &lt;dependency&gt; &lt;groupId&gt;com.itextpdf&lt;/groupId&gt; &lt;artifactId&gt;layout&lt;/artifactId&gt; &lt;version&gt;7.x.x&lt;/version&gt; &lt;!-- 请替换为最新的版本...

    java生成二维码jar及java文件

    在运行这个程序后,你会得到一个名为"sample_qrcode.png"的文件,里面包含了你指定的文本内容生成的二维码。你可以根据需要调整二维码的大小、错误纠正级别(ErrorCorrectionLevel)以及自定义二维码的颜色。 生成...

    java获取文件编码

    java获取文件原始编码,

    YOYOPlayer1.1.2

    希望和大家一起探讨JAVA问题,让JAVA的浓香飘的更远.&lt;br&gt;其实本人也希望打包成ZIP格式,可是ZIP的压缩率没有RAR高,并且blogjava只支持2000KB的文件,所以只能打包成RAR格式的,还望大家见谅.最后,谢谢我的女友YOYO这段...

    静态代码检测

    集成Checkstyle到项目中,可以通过Maven或Gradle插件,或者IDE插件如IntelliJ IDEA和Eclipse,这样在编码时就能实时得到反馈。 其次,PMD是另一个强大的静态代码分析工具,不仅支持Java,还支持其他语言如C#、PL/...

    JAVA 音频文件PCM转WAV Utils类

    总之,"JAVA 音频文件PCM转WAV Utils类"是Java音频处理领域的一个实用工具,它简化了音频格式转换的过程,使得开发人员可以更方便地在不同音频格式之间进行转换,特别是在需要从基本的PCM数据创建WAV文件的场合。

    使用maven Profile实现多环境构建

    Profile通常定义在`pom.xml`文件的`&lt;profiles&gt;`标签下。 为了实现多环境构建,我们可以在`pom.xml`中创建多个Profile,每个Profile对应一个环境。例如,我们可以有名为`dev`(开发)、`test`(测试)和`prod`(生产...

    获取zip文件编码格式 cpdetector.zip

    "获取zip文件编码格式 cpdetector.zip" 是一个工具,它能够帮助我们识别ZIP文件内文本文件的编码格式。 这个工具的关键依赖于三个JAR文件:antlr-1.0.jar、cpdetector-1.08.jar和jchardet-1.0.jar。这些库提供了...

Global site tag (gtag.js) - Google Analytics