美文网首页
android 关于输入输出流一些使用

android 关于输入输出流一些使用

作者: dong_hui | 来源:发表于2018-08-06 14:18 被阅读11次
     try {
                FileInputStream  fis=new FileInputStream("test.txt");
                int n=fis.read();   //输入流中读取一个数据字节
                Log.i("test",(char)n+"---");
                while (n!=-1){
                    Log.i("test",(char)n+"---");
                    n=fis.read();
                }
                fis.close();
            } catch (Exception e) {
                e.printStackTrace();
            }
    
            try {
                FileInputStream  fis1=new FileInputStream("test.txt");
                byte[] bytes =new byte[100];
                fis1.read(bytes);        // 从输入流中将最多b.length哥字节的数据读入第一个byte数组中;
    
                //fis1.read(bytes,0,6);      //从输入流中将最多len个字节的数据读入byte数组中;
    
                Log.i("test",new String(bytes)+"---");
    
                fis1.close();
            } catch (Exception e) {
                e.printStackTrace();
            }
    
    
    
            try {
    
                FileOutputStream  fos=new FileOutputStream("test.txt",true);  //true   写入追加
                fos.write(50);
                fos.write('a');
                fos.close();
    
                Log.i("test","---");
    
            } catch (Exception e) {
                e.printStackTrace();
            }
    
    
    
            // 文件拷贝
            try {
              FileInputStream  fis=new FileInputStream("HAPPY.JPG");
              FileOutputStream fos=new FileOutputStream("HAPPYCOPY.JPG");
              int n=0;
              byte[] b=new byte[1024];
              while ((n=fis.read(b))!=-1){
                  fos.write(b);
                  fos.write(b,0,n);  //保证两个文件大小相同
              }
              fis.close();
              fos.close();
    
                Log.i("test","---");
    
            } catch (Exception e) {
                e.printStackTrace();
            }
    
            // 缓冲流
            try {
    
                FileOutputStream fos=new FileOutputStream("test3.txt");
                BufferedOutputStream bos=new BufferedOutputStream(fos);
                bos.write(50);
                bos.write('a');
                bos.flush();   //缓冲区未满,不会主动清空
                bos.close();
    
    
    
                FileInputStream in=new FileInputStream("test.txt");
                BufferedInputStream bis=new BufferedInputStream(in);
                //byte[] b=new byte[1024];
                bis.read();
              Log.i("test",(char)bis.read()+"----");
    
              bos.close();
              bis.close();
              in.close();
              bis.close();
    
            } catch (FileNotFoundException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            }
    
    

    相关文章

      网友评论

          本文标题:android 关于输入输出流一些使用

          本文链接:https://www.haomeiwen.com/subject/bktgvftx.html