一、字节流:需求想要操作图片数据、这是用的字节流。 Outputstream//字符流底层使用的是字节流 public static void xieru()throws IOException { //创建目的地 FileOutputStream fos=new FileOutputStream("fos.txt"); fos.write("abcd".getBytes());//将字符串转化为字节数据 fos.close();//每次用完后必须关闭文件节省资源。 } public static void duru()throws IOException { //创建要 FileInputStream fis=new FileInputStream("fos.txt"); 读取内容目的地 int ch=0; while((ch=fis.read())!=0) { System.out.println((char)ch); } fis.close(); } public static void duru2()throws IOException { //创建目的地 FileInputStream fis2=new FileInputStream("fos.txt"); int num=0; byte [] by=new byte[1024];//。 while((num=fis2.read(by))!=0) { System.out.println(new String(by,0,num)); } fis2.close(); } public static void duru3()throws IOException { FileInputStream fis3=new FileInputStream("fos.txt"); byte [] by=new byte[1024]; int num=fis3.available();//字节数统计。 // byte [] by1=new byte[fis3.available()];//定一个刚刚好的缓冲区。 //注意如果内存过大容易造成内存崩溃要慎重是这种方法。。 while((num=fis3.read(by))!=0) { System.out.println(new String(by1)); } fis3.close(); System.out.println(num); } 二,读取键盘录入: InputStream in=System.in; int by=in.read();//成为阻塞式,必须等到有输入数据才能执行。 int by1=in.read(); System.out.println(by); System.out.println(by1) //一个一个输入后输出 InputStream in=System.in; int ch=0; while((ch=in.read())!=-1) { System.out.println((char)ch); }
|