android中String与InputStream之间的相互转换方式

发布时间:2025-09-02 00:44:16 作者:益华网络 来源:undefined 浏览量(0) 点赞(0)
摘要:在android中我们涉及到网络访问以及文件访问时,难免需要写String与InputStream之间的相互转换的相关代码,实现形式:(或见另一篇相似文章http://blog.itpub.net/28932681/viewspace-2286125/)一:纯手戳代码: 1.String to InputStream

在android中我们涉及到网络访问以及文件访问时,难免需要写String与InputStream之间的相互转换的相关代码,实现形式:

(或见另一篇相似文章http://blog.itpub.net/28932681/viewspace-2286125/)一:纯手戳代码:

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 =newStringBuilder();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”);

二维码

扫一扫,关注我们

声明:本文由【益华网络】编辑上传发布,转载此文章须经作者同意,并请附上出处【益华网络】及本页链接。如内容、图片有任何版权问题,请联系我们进行处理。

感兴趣吗?

欢迎联系我们,我们愿意为您解答任何有关网站疑难问题!

您身边的【网站建设专家】

搜索千万次不如咨询1次

主营项目:网站建设,手机网站,响应式网站,SEO优化,小程序开发,公众号系统,软件开发等

立即咨询 15368564009
在线客服
嘿,我来帮您!