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++) 所需的头文件名称 ...
随机推荐
- android 自动生成jni C语言头文件
1. 在类里面申明 public native xxx(); 函数接口2. 在安卓工程src目录下 使用命令 javah 包名.类名 生成该类所申明的c语言接口
- Indexed DB入门导学(1) – 51CTO.COM
在html 5中,其中一个引人注意的新特性,那就是允许使用Indexed DB.… 查阅全文 ›
- linux中网络编程<1>
1 网络编程API (1)网络层的ip地址可以唯一标识网络中的主机,传输层通过协议+端口唯一标识主机中的应用程序.这样以来使用三元组(地址,协议,端口)标识网络的进程. (2)socket---> ...
- HDU - 2037 今年暑假不AC 贪心(求序列中不重叠子序列的最大值问题)
HDU2037 今年暑假不AC 贪心算法 大意: 每次测试数据输入一个n,然后输入n对的电视节目播放时间:开始时间及结束时间, 求这个人能看的最多的完整的节目数. 解题思路: 对于这道解题,是对每个 ...
- CSS3 制作魔方 - 相关立体样式
最好的实践,就是给定一个实践的目标去实践. 目标:利用 CSS3 的一些特性,绘制一个魔方,要可以玩转的那种,即上下左右每一层都可以独立旋转.效果如下: 为了完成此效果,将使用到以下相关概念和样式:坐 ...
- P4463 [国家集训队] calc(拉格朗日插值)
传送门 设\(dp[i][j]\)为考虑\(i\)个数,其中最大值不超过\(j\)的答案,那么转移为\[dp[i][j]=dp[i-1][j-1]\times i\times j+dp[i][j-1] ...
- 关于 prototype与__proto__ (用到的时候再看一次 加深理解)
链接顺序: 1. https://blog.csdn.net/ligang2585116/article/details/53522741 2.https://www.jianshu.com/p/80 ...
- shell学习(5)- sort
Linux sort命令用于将文本文件内容加以排序. sort可针对文本文件的内容,以行为单位来排序. 参数如下: -b 忽略每行前面开始出的空格字符. -c 检查文件是否已经按照顺序排序. -d 排 ...
- DRF教程1-序列化
序列化类 要建立web API,要做的第一件事就是对实例进行序列化,比如以json方式显示.我们可以生命序列化,它和django的forms很相似.在app目录下创建serializers.py fr ...
- C# 基础之字段与属性
1.属性是字段的扩展 2.根据面向对象封装思想,字段最好设为private(私有),这样有利于防止客户端对字段的篡改,从而保证了成员的完整性 3.访问类中私有字段,C#提供了属性,用来对字段进行灵活的 ...