Java基础IO类之字节数组流
package IODemo; //字节数组流 :内部维护这着一个字节数组,我们可以利用流的读取机制来处理字符串 无需关闭,不会报IO异常 // ByteArrayInputstream ByteArrayOutputStream import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; public class byteArraySteamDemo { private static void byteArray(){ String str = " qwefasdfasLJSJFLAKSJDOFA!@$#^%%*()"; //相当于把 str 转成字节 放入ByteArrayInputStream中 ByteArrayInputStream bis = new ByteArrayInputStream(str.getBytes()); ByteArrayOutputStream baos = new ByteArrayOutputStream(); int curr = -1; //每次处理的字节 while ((curr = bis.read())!=-1){ // ASCII表中 65-90 是大写字母 97-122 表示小写字母 if ((curr>=65 && curr<=90) || curr >=97 && curr<=122 ){ //把字节写到里面 baos.write(curr); } } //无需关闭,原因:字节数组流是基于内存的操作流 ,与文件没有关系 System.out.println(baos.toString()); } public static void main(String[] args) { byteArray(); } }
package IODemo;
//字节数组流 :内部维护这着一个字节数组,我们可以利用流的读取机制来处理字符串 无需关闭,不会报IO异常
// ByteArrayInputstream ByteArrayOutputStream
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
public class byteArraySteamDemo {
private static void byteArray(){
String str = " qwefasdfasLJSJFLAKSJDOFA!@$#^%%*()";
//相当于把 str 转成字节 放入ByteArrayInputStream中
ByteArrayInputStream bis = new ByteArrayInputStream(str.getBytes());
ByteArrayOutputStream baos = new ByteArrayOutputStream();
int curr = -1; //每次处理的字节
while ((curr = bis.read())!=-1){
// ASCII表中 65-90 是大写字母 97-122 表示小写字母
if ((curr>=65 && curr<=90) || curr >=97 && curr<=122 ){
//把字节写到里面
baos.write(curr);
}
}
//无需关闭,原因:字节数组流是基于内存的操作流 ,与文件没有关系
System.out.println(baos.toString());
}
public static void main(String[] args) {
byteArray();
}
}