- package com.itheima;
- import java.io.BufferedInputStream;
- import java.io.BufferedOutputStream;
- import java.io.File;
- import java.io.FileInputStream;
- import java.io.FileOutputStream;
- import java.io.IOException;
- /**
- * 题目要求:
- * 在指定目录下创建文件(自己定义),必须创建成功,然后从自己的硬盘上找一个.txt文件 把这个txt文件的内容 复制到 a.txt 里。
- *
- * 在一个指定目录下创建文件,F:\\code 文件名是a.txt
- * 请保证文件创建成功
- * 分析:如果目录不存在,则会抛出异常,为了不抛出异常,我们要先创建这个目录
- * 再创建文件 并把一个指定目录下的文件copy在这个a.txt里面
- *
- */
- public class CreatFilesSuccess {
- /**
- * @param args
- * @throws IOException
- */
- public static void main(String[] args) throws IOException {
- File file = new File("F:\\code\\");//File对象关联这个路径
- //首先判断是否存在
- if(!file.isDirectory()) { //如果不是目录则创建目录
-
- file.mkdirs();
- System.out.println("目录不存在,但已经创建成功!!");
- }
- //创建文件
- File fileResult = new File(file,"a.txt");
- try {
- fileResult.createNewFile();
- //如无异常
- System.out.println("创建文件成功");
- } catch (IOException e) {
- System.out.println("创建文件失败");
- }
- //创建一个File实例有关联 硬盘上的一个目录 如果不存在提示用户 目录文件不存在
- File source = new File("F:\\上海黑马基础1130\\课程资源[url=file://\\day19]\\day19[/url](异常&IO(File类))\\day19_code\\导师代码[url=file://\\day19\\bin\\cn\\itcast\\question2\\]\\day19\\bin\\cn\\itcast\\question2\\[/url]问题说明.txt");
-
- //System.out.println(source.isFile());
- //创建一个输入流对象关联a.txt
- try {
- if(!source.isFile()) {
-
- System.out.println("关联成功!!Next");
- }
-
- } catch (Exception e) {
- System.out.println("读取源不存在,请确认文件是否存在");
- System.exit(0);//退出虚拟机
- }
- //FileInputStream fis = new FileInputStream(source);
- BufferedInputStream bis = new BufferedInputStream(new FileInputStream(source)); //源
- BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(fileResult)); //目的地 fileResut 其实就是让输出流关联到a 也就是我们写入的目的。
- //写入
- int len;
- while((len = bis.read())!=-1) {
-
- bos.write(len);
-
-
- }
- //关流
- bis.close();
- bos.close();
-
- }
- }
复制代码
|
|