android中怎么实现String与InputStream相互转换

android中怎么实现String与InputStream相互转换,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

创新互联公司:2013年开创至今为各行业开拓出企业自己的“网站建设”服务,为超过千家公司企业提供了专业的做网站、成都网站建设、网页设计和网站推广服务, 按需网站设计由设计师亲自精心设计,设计的效果完全按照客户的要求,并适当的提出合理的建议,拥有的视觉效果,策划师分析客户的同行竞争对手,根据客户的实际情况给出合理的网站构架,制作客户同行业具有领先地位的。


一:纯手戳代码:

1.String to InputStream

String str = “String与InputStream相互转换”;
//str.getBytes()方法是得到一个操作系统默认的编码格式的字节数组,见 http://blog.itpub.net/28932681/viewspace-2286124/
InputStream   in_nocode   =   new   ByteArrayInputStream(str.getBytes());
InputStream   in_withcode   =   new   ByteArrayInputStream(str.getBytes(“UTF-8”));

2.InputStream to String
方法1:

public String convertStreamToString(InputStream is) {

BufferedReader reader = new BufferedReader(new InputStreamReader(is));

StringBuilder sb = new StringBuilder();   
    String line = null;   
    try {   
        while ((line = reader.readLine()) != null) {   
            sb.append(line + "/n");   //这里的“/n”一定要加上,原因见http://blog.itpub.net/28932681/viewspace-2286126/
        }   
    } catch (IOException e) {   
        e.printStackTrace();   
    } finally {   
        try {   
            is.close();   
        } catch (IOException e) {   
            e.printStackTrace();   
        }   
    }   
    return sb.toString();   
}

方法2:

public   String   inputStream2String   (InputStream   in)   throws   IOException   {
StringBuffer   out   =   new   StringBuffer();
byte[]   b   =   new   byte[4096];
for   (int   n;   (n   =   in.read(b))   !=   -1;)   {
out.append(new   String(b,   0,   n));
}
return   out.toString();
}

方法3:
public   static   String   inputStream2String(InputStream   is)   throws   IOException{
ByteArrayOutputStream   baos   =   new   ByteArrayOutputStream();
int   len=-1;

byte[] buffer=new byte[1024];
while((len=is.read(buffer))!=-1){
baos.write(buffer, 0, len);
}

is.close();
  return   baos.toString();

//return new String(baos.toByteArray());
}

二:通过第三方jar包实现,推荐一个jar包,用来转换InputStream到String,代码示例如下:

1 // 引入apache的io包
2 import org.apache.commons.io.IOUtils;
3
4 InputStream in = con.getInputStream();
5 String result = IOUtils.toString(in, “UTF-8”);

看完上述内容,你们掌握android中怎么实现String与InputStream相互转换的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注创新互联行业资讯频道,感谢各位的阅读!

文章标题:android中怎么实现String与InputStream相互转换
网站地址:https://www.cdcxhl.com/article38/jpsesp.html

成都网站建设公司_创新互联,为您提供微信公众号外贸建站做网站品牌网站设计品牌网站制作网站制作

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

微信小程序开发