一. String 转换为InputStream

String str = "String 与 inputStream转换";

InputStream ins1 = new ByteArrayInputStream(str.getBytes());

InputStream ins2 = new ByteArrayInputStream(str.getBytes("UTF-8"));

二. InputStream 转为 String

方法一:利用bufferedReader

   1: public String convertToString(InputStream is){

   2:         BufferedReader bReader = new BufferedReader(new InputStreamReader(is));

   3:         StringBuffer buffer = new StringBuffer();

   4:         String line = null;

   5:         try {

   6:             while((line = bReader.readLine())!=null){

   7:                 buffer.append(line);

   8:             }

   9:         } catch (IOException e) {

  10:             // TODO Auto-generated catch block

  11:             e.printStackTrace();

  12:         }finally{

  13:             try {

  14:                 bReader.close();

  15:             } catch (IOException e) {

  16:                 // TODO Auto-generated catch block

  17:                 e.printStackTrace();

  18:             }

  19:         }

  20:         return buffer.toString();

  21:     }

方法二:

   1: public String convertToString(InputStream is){

   2:         StringBuffer buffer = new StringBuffer();

   3:         byte[] b = new byte[1024];

   4:         try {

   5:             for(int n; (n = is.read(b))!=-1;)

   6:                 buffer.append(new String(b,0,n));

   7:             return buffer.toString();

   8:         } catch (IOException e) {

   9:             // TODO Auto-generated catch block

  10:             e.printStackTrace();

  11:         }finally{

  12:             try {

  13:                 is.close();

  14:             } catch (IOException e) {

  15:                 // TODO Auto-generated catch block

  16:                 e.printStackTrace();

  17:             }

  18:         }

  19:     }

方法三:

   1: public String convertToString(InputStream is){

   2:         ByteArrayOutputStream os = new ByteArrayOutputStream();

   3:         int i = -1;

   4:         try {

   5:             while((i = is.read())!=-1){

   6:                 os.write(i);

   7:             }

   8:             return os.toString();

   9:         } catch (IOException e) {

  10:             // TODO Auto-generated catch block

  11:             e.printStackTrace();

  12:             return null;

  13:         }finally{

  14:             try {

  15:                 os.close();

  16:             } catch (IOException e) {

  17:                 // TODO Auto-generated catch block

  18:                 e.printStackTrace();

  19:             }

  20:         }

  21:     }

inputStream 与 String 的互相转换的更多相关文章

  1. InputStream和OutputStream与String之间的转换

    //1.字符串转inputstream String str="aaaaa"; InputStream in = new ByteArrayInputStream(str.getB ...

  2. apache.commons.io.IOUtils: 一个很方便的IO工具库(比如InputStream转String)

    转换InputStream到String, 比如 //引入apache的io包 import org.apache.commons.io.IOUtils; ... ...String str = IO ...

  3. 关于InputStream 和String对象之间的相互转换

    代码如下: package com.xin.stream; import java.io.BufferedReader; import java.io.ByteArrayInputStream; im ...

  4. Java中InputStream和String之间的转化

    https://blog.csdn.net/lmy86263/article/details/60479350 在Java中InputStream和String之间的转化十分普遍,本文主要是总结一下转 ...

  5. [技巧篇]19.InputStream与String,Byte之间互转[转载]

    import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOExceptio ...

  6. InputStream与String,Byte之间互转

    import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOExceptio ...

  7. 将输入流InputStream转换为String

    public static String convertStreamToString(InputStream is) { /* * To convert the InputStream to Stri ...

  8. C#中char[]与string之间的转换

    string 转换成 Char[] string ss = "abcdefg"; char[] cc = ss.ToCharArray(); Char[] 转换成string st ...

  9. C字符串和C++中string的区别 &&&&C++中int型与string型互相转换

    在C++中则把字符串封装成了一种数据类型string,可以直接声明变量并进行赋值等字符串操作.以下是C字符串和C++中string的区别:   C字符串 string对象(C++) 所需的头文件名称 ...

随机推荐

  1. Python的中文处理

    一.使用中文字符 在python源码中如果使用了中文字符,运行时会有错误,解决的办法是在源码的开头部分加入字符编码的声明,下面是一个例子: #!/usr/bin/env python # -*- co ...

  2. In-App Purchase Programming Guide----(一) ---- About In-App Purchase

    About In-App Purchase In-App Purchase allows you to embed a store inside your app using the Store Ki ...

  3. setInterval和setTImeout中的this指向问题

    问题:在setInterval和setTimeout中传入函数时,函数中的this会指向window对象 解决方法: 1. 将当前对象的this存为一个变量,定时器内的函数利用闭包来访问这个变量.va ...

  4. Codeforces Round #374 (Div. 2)【A,B,C】

    = =C题这种DP打的少吧,记得以前最短路分层图打过这样子的,然后比赛前半个小时才恍然大雾...然后瞎几把还打错了,还好A,B手速快..上分了: A题: 计算B的连续个数的组数,每组的连续个数: 水题 ...

  5. [HNOI2010] 公交线路 bus

    标签:状态压缩+矩阵快速幂. 题解: 首先看范围,p<=10,那么我们可以想到状态压缩.我们把从一个长度为10的区间进行压缩,1代表可以,那么当值一个区间的1的个数为k个,我们就认为他是合法的. ...

  6. [Xcode 实际操作]七、文件与数据-(18)使用MarkMan与设计师进行心灵沟通

    目录:[Swift]Xcode实际操作 本文将演示MarkMan的使用. 在界面开发过程中,最终的效果和设计稿难免有些出入, 通常是颜色.位置.尺寸方面的偏差,使用MarkMan助你领会设计师的意图. ...

  7. __setitem__,__getitem,__delitem__

    目录 __setitem__ __getitem__ __delitem__与__delattr__ class Foo: def __init__(self, name): self.name = ...

  8. 怎么快速对DB里的所有email进行校验

    问题 由于业务上的需求,重新改写了校验email的正则表达式,同时DB里又迁移了其他数据库的数据,现在需要重新对DB里的所有email再校验一次,以排除掉不合法的email. DB里的数据很多,手动去 ...

  9. 浅谈算法——AC自动机

    在学习AC自动机之前,你需要两个前置知识:Trie树,KMP 首先我们需要明白,AC自动机是干什么的(用来自动AC的) 大家都知道KMP算法是求单字符串对单字符串的匹配问题的,那么多字符在单字符上匹配 ...

  10. 普通平衡树与文艺平衡树的splay代码

    主要综合借鉴了yyb和马前卒两位大佬的. //普通平衡树 #include <cstdio> #include <cctype> #include <cstring> ...