<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    夢幻之旅

    DEBUG - 天道酬勤

       :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      671 隨筆 :: 6 文章 :: 256 評論 :: 0 Trackbacks
    package com.roadway.edmail.util;

    import java.io.BufferedInputStream;
    import java.io.File;
    import java.io.FileInputStream;

    public class FileEncodeReferee
    {
        
    private File file;
        
        
    public FileEncodeReferee(File file)
        
    {
            
    this.file = file;
        }

        
        
    public FileEncodeReferee(String path)
        
    {
            file 
    = new File(path);
        }

        
        
    public String getCharset()
        
    {
            File file 
    = this.file;
            
            String charset 
    = "GBK";
            
    byte[] first3Bytes = new byte[3];
            BufferedInputStream bis 
    = null;
            
    try
            
    {
                
    //boolean checked = false;
                bis = new BufferedInputStream(new FileInputStream(file));
                bis.mark(
    0);
                
    int read = bis.read(first3Bytes, 03);
                
    if (read == -1)
                
    {
                    
    return charset;
                }

                
    if (first3Bytes[0== (byte0xFF && first3Bytes[1== (byte0xFE)
                
    {
                    charset 
    = "UTF-16LE";
                    
    //checked = true;
                }

                
    else if (first3Bytes[0== (byte0xFE
                        
    && first3Bytes[1== (byte0xFF)
                
    {
                    charset 
    = "UTF-16BE";
                    
    //checked = true;
                }

                
    else if (first3Bytes[0== (byte0xEF
                        
    && first3Bytes[1== (byte0xBB
                        
    && first3Bytes[2== (byte0xBF)
                
    {
                    charset 
    = "UTF-8";
                    
    //checked = true;
                }

                
    /*******************************************************************
                 * bis.reset(); if (!checked) { int loc = 0; while ((read =
                 * bis.read()) != -1) { loc++; if (read >= 0xF0) { break; } if (0x80 <=
                 * read && read <= 0xBF) // 單獨出現BF以下的,也算是GBK { break; } if (0xC0 <=
                 * read && read <= 0xDF) { read = bis.read(); if (0x80 <= read &&
                 * read <= 0xBF)// 雙字節 (0xC0 - 0xDF) { // (0x80 - 0xBF),也可能在GB編碼內
                 * continue; } else { break; } } else if (0xE0 <= read && read <=
                 * 0xEF) { // 也有可能出錯,但是幾率較小 read = bis.read(); if (0x80 <= read &&
                 * read <= 0xBF) { read = bis.read(); if (0x80 <= read && read <=
                 * 0xBF) { charset = "UTF-8"; break; } else { break; } } else {
                 * break; } } } System.out.println(loc + " " +
                 * Integer.toHexString(read)); }
                 *****************************************************************
    */

            }

            
    catch (Exception e)
            
    {
                e.printStackTrace();
            }

            
    finally
            
    {
                
    if (bis != null)
                
    {
                    
    try
                    
    {
                        bis.close();
                    }

                    
    catch (Exception ex)
                    
    {
                        ex.printStackTrace();
                    }

                }

            }

            
    return charset;
        }

        
        
    public static void main(String[] args)
        
    {
            FileEncodeReferee fer 
    = new FileEncodeReferee("E://Huha.csv");
            System.out.println(fer.getCharset());
        }

    }
    posted on 2009-12-07 10:43 HUIKK 閱讀(3656) 評論(2)  編輯  收藏 所屬分類: Java

    評論

    # re: java 判斷文本文件編碼 2010-08-17 11:26 wjm
    你試過嗎???  回復  更多評論
      

    # re: java 判斷文本文件編碼 2014-11-17 20:22 zudaima
    java文件教程源代碼下載:http://zuidaima.com/share/k%E6%96%87%E4%BB%B6-p1-s1.htm  回復  更多評論
      

    主站蜘蛛池模板: 成年美女黄网站18禁免费| 久久免费观看国产精品88av| 黄色永久免费网站| 亚洲AV无码一区东京热| 在线看片免费人成视频福利| 亚洲中文字幕无码一久久区| 一级免费黄色大片| 亚洲天堂在线视频| 久久久久女教师免费一区| 亚洲中文字幕无码永久在线 | aaa毛片免费观看| 国产日产亚洲系列最新| 成人免费一区二区三区| 亚洲av无码一区二区三区不卡 | 亚洲精品视频免费在线观看| 亚洲第一成年人网站| 免费看污成人午夜网站| 亚洲日韩精品无码专区加勒比☆| 日韩成人免费在线| 亚州**色毛片免费观看| 亚洲成AV人片在线播放无码| 精品福利一区二区三区免费视频| 亚洲va在线va天堂va手机| 四虎国产精品免费视| 中文字幕在线视频免费| 亚洲性天天干天天摸| 噼里啪啦电影在线观看免费高清 | 久久永久免费人妻精品| 亚洲人xxx日本人18| 亚洲av区一区二区三| 国产免费无码一区二区| 亚洲大香人伊一本线| 日本19禁啪啪无遮挡免费动图| 一级特黄a大片免费| 777亚洲精品乱码久久久久久| 免费观看的毛片手机视频| 国产裸体美女永久免费无遮挡| 91精品国产亚洲爽啪在线观看| 精品免费国产一区二区三区| 中文字幕视频免费在线观看| 亚洲国产精品综合久久久|