黑马程序员技术交流社区

标题: io复制文件/接收键盘路径保存文件 [打印本页]

作者: 南槿。    时间: 2017-3-20 23:52
标题: io复制文件/接收键盘路径保存文件
package com.nanjin.t1;

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Scanner;

public class CopyFile {
public static void main(String[] args) throws IOException {

//        System.out.println(a+"cccccccc");
        //copyFile(); //接受键盘输入拷贝文件到目录
        //inFile(); //将键盘录入的拷贝到文件,输入exit时结束
}

public static void inFile() throws FileNotFoundException, IOException {
dEMO5();
       
}

public static void dEMO5() throws FileNotFoundException, IOException {
        Scanner ip=new Scanner(System.in);
        FileOutputStream fos =new FileOutputStream("1.txt",true);
        System.err.println("请输入吧");
        while(true){
                String line =ip.nextLine();
                if(line.equals("exit")){
                        break;
                }
                fos.write(line.getBytes());
                fos.write("\r\n".getBytes());
        }
        fos.close();
}

public static void copyFile() throws IOException {
        while(true){
                Scanner ip =new Scanner(System.in);
                System.out.println("请输入文件路径:");
                String src=ip.nextLine();

                File file =new File (src);
          if(!file.exists()||file.isDirectory()){
                  System.out.println("目标文件不存在");
          }
          BufferedInputStream bis=null;
          BufferedOutputStream bos=null;
          try {
                  bis=new BufferedInputStream(new FileInputStream(src));
                   bos  = new BufferedOutputStream(new FileOutputStream("1.jpg"));
                   int b;
                          while((b=bis.read()) !=-1){
                                  bos.write(b);
                          }
        } catch (Exception e) {
                // TODO: handle exception
        }
          
                          
               
                 
          finally {
                  bis.close();
                  bos.close();
        }
          break;
        }
}
}



作者: zlwxf    时间: 2017-3-21 00:08
后面的关闭流也可以用try catch

作者: 南槿。    时间: 2017-3-21 00:09
zlwxf 发表于 2017-3-21 00:08
后面的关闭流也可以用try catch

好,谢谢大哥指点。
作者: zlwxf    时间: 2017-3-21 00:13
南槿。 发表于 2017-3-21 00:09
好,谢谢大哥指点。

其实知道会用就行,直接抛异常是最简单快捷的方式





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2