inputStream 与 String 的互相转换
一. 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 的互相转换的更多相关文章
- InputStream和OutputStream与String之间的转换
//1.字符串转inputstream String str="aaaaa"; InputStream in = new ByteArrayInputStream(str.getB ...
- apache.commons.io.IOUtils: 一个很方便的IO工具库(比如InputStream转String)
转换InputStream到String, 比如 //引入apache的io包 import org.apache.commons.io.IOUtils; ... ...String str = IO ...
- 关于InputStream 和String对象之间的相互转换
代码如下: package com.xin.stream; import java.io.BufferedReader; import java.io.ByteArrayInputStream; im ...
- Java中InputStream和String之间的转化
https://blog.csdn.net/lmy86263/article/details/60479350 在Java中InputStream和String之间的转化十分普遍,本文主要是总结一下转 ...
- [技巧篇]19.InputStream与String,Byte之间互转[转载]
import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOExceptio ...
- InputStream与String,Byte之间互转
import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOExceptio ...
- 将输入流InputStream转换为String
public static String convertStreamToString(InputStream is) { /* * To convert the InputStream to Stri ...
- C#中char[]与string之间的转换
string 转换成 Char[] string ss = "abcdefg"; char[] cc = ss.ToCharArray(); Char[] 转换成string st ...
- C字符串和C++中string的区别 &&&&C++中int型与string型互相转换
在C++中则把字符串封装成了一种数据类型string,可以直接声明变量并进行赋值等字符串操作.以下是C字符串和C++中string的区别: C字符串 string对象(C++) 所需的头文件名称 ...
随机推荐
- epoll的一个使用例子
使用到主要函数有: #include <sys/epoll.h> int epoll_create(int size); int epoll_create1(int flags); int ...
- phpstudy打不开localhost(Apache)
1.先打开httpd.conf文件,打开httpd-vhosts.conf "Include conf/extra/httpd-vhosts.conf"的注释,启动服务时优先加载此 ...
- set和multiset容器
set和multiset容器的能力 set 和multiset容器的内部结构通常由平衡二叉树(balanced binary tree)来实现.当元素放入容器中时,会按照一定的排序法则自动排序,默认是 ...
- 1.9 Hive常见属性配置
一.Hive数据仓库位置配置 1. # Hive数据仓库位置配置: 默认位置(hive根目录): /user/hive/warehouse 注意事项: *在仓库目录下,没有对默认的数据库default ...
- 我所理解的Restful API最佳实践
一直在公司负责API数据接口的开发,期间也遇到了不小的坑,本篇博客算是做一个小小的记录. 1. 不要纠结于无意义的规范 在开始本文之前,我想先说这么一句:RESTful 真的很好,但它只是一种软 ...
- Flutter实战视频-移动电商-16.补充_保持页面状态
16.补充_保持页面状态 修正一个地方: 设置了item的高度为380 横向列表为380.最终build的高度也增加了50为430. 增加了上面的高度以后,下面那个横线划掉的价格可以显示出来了. 但是 ...
- 创建Sitemap文件供搜索引擎使用
以下内容转载自 http://www.cnblogs.com/webtrados/archive/2009/12/29/1635305.html 如何创建Sitemap文件 Sitemap的格式有XM ...
- swipe轮播插件零基础实用
此篇博客整理了常用的轮播效果,适用于所有开发人员 swipe是当下相对而言较好用的轮播插件,下面是博主整理的demo源代码,可直接上手(备注:需自己手动swipe所需的j和css) 此段代码总共是有三 ...
- iOS 7:漫谈#define 宏定义
#define宏定义在C系开发中可以说占有举足轻重的作用.底层框架自不必说,为了编译优化和方便,以及跨平台能力,宏被大量使用,可以说底层开发离开define将寸步难行.而在更高层级进行开 ...
- log4j和log4j2怎么动态加载配置文件
应用场景与问题 当项目在运行时,我们如果需要修改log4j 1.X或者log4j2的配置文件,一般来说我们是不能直接将项目停止运行再来修改文件重新部署的.于是就有这样一个问题:如何在不停止当前项目的运 ...