zoukankan      html  css  js  c++  java
  • Android中检测字符编码(GB2312,ASCII,UTF8,UNICODE,TOTAL——ENCODINGS)方法(二)

    Intent intent = getIntent();
            String contentUri = null;
            Uri uri =null;
            if (intent.getData() != null) {
                uri = intent.getData();
                contentUri = "file".equals(uri.getScheme())
                        ? FileContentProvider.BASE_URI + uri.getEncodedPath()
                        : uri.toString();
                String intentType = intent.getType();
                if (intentType != null) {
                    contentUri += "?" + intentType;
                }
            }
            File mFile = new File(uri.getPath());
            InputStream mIn = null;
            try{
                Log.d(LOGTAG,"file is "+mFile);
                mIn = new FileInputStream(mFile);
                byte[]b = new byte[3];
                mIn.read(b);
                
                mIn.close();
                Log.d(LOGTAG,"B is "+b[0]+b[1]+b[2]);
                if (b[0]==-27||(b[0]==-17&&b[1]==-69&&b[2]==-65))  {
                    s.setDefaultTextEncodingName("utf-8");//added by chenxuan for SWBUG00027593
                 }
                else{
                    s.setDefaultTextEncodingName("GBK");
                    }
             }catch(FileNotFoundException e){
                Toast.makeText(this,R.string.file_inexistence,Toast.LENGTH_SHORT).show();
                finish();
                return;
             }catch(IOException ex){
                finish();
                Toast.makeText(this, R.string.read_file_failed,Toast.LENGTH_SHORT).show();
                return;
            }
  • 相关阅读:
    [VirtaulBox]网络连接设置
    LeetCode
    LeetCode
    LeetCode
    LeetCode-37.Sudok Solver
    LeetCode-36.Valid Sudoku
    LeetCode-52.N-Queen II
    LeetCode-51.N-Queens
    LeetCode-22.Generate Parentheses
    LeetCode-111.Mininum Depth of Binary Tree
  • 原文地址:https://www.cnblogs.com/bill-technology/p/4130930.html
Copyright © 2011-2022 走看看