io流创建文件,删除文件,复制文件,复制图片

io流创建文件
package com.xyb.io;

import java.io.File;
import java.io.IOException;

public class Test1 {
        public static void main(String[] args) throws IOException {
          //文件File
              File f=new File("a.txt");
              f.createNewFile();
              File f2=new File("d:\\abc");
              f2.mkdir();
         }
}

io流删除文件
package com.xyb.io;

import java.io.File;
import java.io.IOException;

public class Test2 {
         public static void main(String[] args) throws IOException {
          //创建文件      虚拟的
         File f=new File("a.txt");
         if(f.isDirectory()){   //是否是目录
   //创建目录
         f.mkdir();
          }else{
               f.createNewFile(); //创建文件
              }
              System.out.println("文件是否存在:"+f.exists());
              f.delete();  //删除
              System.out.println("文件是否存在:"+f.exists());//判断文件是否删除成功
        }
}

io流复制文件
package com.xyb.io;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;

public class Test3{
         public static void main(String[] args) throws IOException {
                  File f=new File("c:\\a.txt");    //创建文件f的一个输入流   就可以读取到这个文件里面的所有内容
                  InputStream is=new FileInputStream(f);
                  //文件有多长,我们就读取多少次
                  for(int i=0;i<f.length();i++){
                           char ch=(char)is.read();
                           System.out.print(ch);
                          }

                  //第二种方法,使用字节数组
                  InputStream iss=new FileInputStream(f);
                  byte[] b=new byte[(int) f.length()];
                  //一次性的将所有的数组都读取到字节数组b中
                  iss.read(b);
                  String str=new String(b);
                  System.out.println(str);
                  //输出流
                  File f2=new File("d:\\b.txt");
                  //f2.createNewFile();
                  //定义输出流
                  //默认的写入是覆盖   会覆盖原先的内容    如果想要追加内容
                  OutputStream os=new FileOutputStream(f2);
                  //写
                  os.write(b);
                  //写完之后   一定要记得,迫使所有的缓冲区里面的内容都写出去
                  os.flush();
            }
}



io流复制图片
package com.xyb.io;

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

public class Demo {
   
public static void main(String[] args) throws IOException {
        FileInputStream fe=
new FileInputStream("C:\\p.jpg");
        BufferedInputStream fr=
new BufferedInputStream(fe);
        FileOutputStream br=
new FileOutputStream("D:\\p.jpg");
        BufferedOutputStream fb=
new BufferedOutputStream(br);
       
byte[] buf=new byte[1024];
       
int i=0;
       
while((i=fr.read(buf))!=-1){ //缓冲区的read方法
            fb.write(buf,0,i);    //缓冲区的write方法
            fb.flush();
        }
    }
}



  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值