public static void main(String[] args) {
String str = "abcdefg";
/*
* 输入流,很多之类可以参考http://www.javaweb.cc/JavaAPI1.6/ 通过一个字符串构造
*/
InputStream inputStream = new ByteArrayInputStream(str.getBytes());
// 初始化一个OutputStream之类
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
try {
int i = 0;
// 通过byte来装inputStream的内容,注意其大小
byte[] b = new byte[2];
while ((i = inputStream.read(b)) != -1) {
/**
* 循环读取内容,并记录读取的长度 byteArrayOutputStream.write(b)区别
* 当最后一次的时候,可能只读取了一个字符,但是直接write会导致最后一次同样会写2个字符,导致最终结果为abcdefgf
* 所以最好是指明其write的大小
*/
byteArrayOutputStream.write(b, 0, i);
}
} catch (Exception e) {
}
// 直接转换为字符串
String out = byteArrayOutputStream.toString();
int len = out.length();
System.out.println(out);
System.out.println(len);
}
public static void main(String[] args) {
String str = "abcdefg";
/*
* 输入流,很多之类可以参考http://www.javaweb.cc/JavaAPI1.6/ 通过一个字符串构造
*/
InputStream inputStream = new ByteArrayInputStream(str.getBytes());
// 初始化一个OutputStream之类
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
try {
int i = 0;
// 通过byte来装inputStream的内容,注意其大小
byte[] b = new byte[1024];
while ((i = inputStream.read(b)) != -1) {
/**
* 循环读取内容,并记录读取的长度 byteArrayOutputStream.write(b)区别
* 当最后一次的时候,可能只读取了一个字符,但是直接write会导致最后一次同样会写2个字符,导致最终结果为abcdefgf
* 所以最好是指明其write的大小
*/
byteArrayOutputStream.write(b);
}
} catch (Exception e) {
}
// 直接转换为字符串
String out = byteArrayOutputStream.toString();
int len = out.length();
System.out.println(out);
System.out.println(len);
}
这里的byte是1024字节,结果是长度变成了1024,因为byte构造出来就是有1024位,只是前面被读了7位,后面都是空的,所以最好
String out = byteArrayOutputStream.toString().trim();
public static void main(String[] args) {
String str = "abcdefg";
/*
* 输入流,很多之类可以参考http://www.javaweb.cc/JavaAPI1.6/ 通过一个字符串构造
*/
InputStream inputStream = new ByteArrayInputStream(str.getBytes());
// 初始化一个OutputStream之类
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
try {
int i = 0;
while ((i = inputStream.read()) != -1) {
byteArrayOutputStream.write(i);
}
} catch (Exception e) {
}
// 直接转换为字符串
String out = byteArrayOutputStream.toString();
int len = out.length();
System.out.println(out);
System.out.println(len);
}
这种方法直接通过int一个字符一个字符的写