• String 和 InputStream 互转方式


     /**
         * 利用BufferedReader实现Inputstream转换成String <功能详细描述>
         * 
         * @param in
         * @return String
         */
        
        public static String Inputstr2Str_Reader(InputStream in, String encode)
        {
            
            String str = "";
            try
            {
                if (encode == null || encode.equals(""))
                {
                    // 默认以utf-8形式
                    encode = "utf-8";
                }
                BufferedReader reader = new BufferedReader(new InputStreamReader(in, encode));
                StringBuffer sb = new StringBuffer();
                
                while ((str = reader.readLine()) != null)
                {
                    sb.append(str).append("
    ");
                }
                return sb.toString();
            }
            catch (UnsupportedEncodingException e1)
            {
                e1.printStackTrace();
            }
            catch (IOException e)
            {
                e.printStackTrace();
            }
            
            return str;
        }
        
        /**
         * 利用byte数组转换InputStream------->String <功能详细描述>
         * 
         * @param in
         * @return
         * @see [类、类#方法、类#成员]
         */
        
        public static String Inputstr2Str_byteArr(InputStream in, String encode)
        {
            StringBuffer sb = new StringBuffer();
            byte[] b = new byte[1024];
            int len = 0;
            try
            {
                if (encode == null || encode.equals(""))
                {
                    // 默认以utf-8形式
                    encode = "utf-8";
                }
                while ((len = in.read(b)) != -1)
                {
                    sb.append(new String(b, 0, len, encode));
                }
                return sb.toString();
            }
            catch (IOException e)
            {
                e.printStackTrace();
            }
            return "";
            
        }
        
        /**
         * 利用ByteArrayOutputStream:Inputstream------------>String <功能详细描述>
         * 
         * @param in
         * @return
         * @see [类、类#方法、类#成员]
         */
        public static String Inputstr2Str_ByteArrayOutputStream(InputStream in,String encode)
        {
            ByteArrayOutputStream out = new ByteArrayOutputStream();
            byte[] b = new byte[1024];
            int len = 0;
            try
            {
                if (encode == null || encode.equals(""))
                {
                    // 默认以utf-8形式
                    encode = "utf-8";
                }
                while ((len = in.read(b)) > 0)
                {
                    out.write(b, 0, len);
                }
                return out.toString(encode);
            }
            catch (IOException e)
            {
                e.printStackTrace();
            }
            return "";
        }
        
        /**
         * 利用ByteArrayInputStream:String------------------>InputStream <功能详细描述>
         * 
         * @param inStr
         * @return
         * @see [类、类#方法、类#成员]
         */
        public static InputStream Str2Inputstr(String inStr)
        {
            try
            {
                // return new ByteArrayInputStream(inStr.getBytes());
                // return new ByteArrayInputStream(inStr.getBytes("UTF-8"));
                return new StringBufferInputStream(inStr);
            }
            catch (Exception e)
            {
                e.printStackTrace();
            }
            return null;
        }
  • 相关阅读:
    Android触控屏幕Gesture(GestureDetector和SimpleOnGestureListener的使用教程)
    Cocos发展Visual Studio下一个libcurl图书馆开发环境的搭建
    使用DbUtils实现CRUD
    大约apache 2.4.X虚拟主机配置问题的版本号后,
    应对黑客攻击SQL SERVER数据库中的一个案例
    【Unity技能】做一个简单的NPC
    ViewRootImpl和WindowManagerService笔记
    Web Service简单入门示例
    Oracle Instanc Client安装命令工具
    ListView嵌套GridView显示不完整的解决方案
  • 原文地址:https://www.cnblogs.com/mengzw/p/5112712.html
Copyright © 2020-2023  润新知