IO流基础练习:File ,FileInputStream,FileOutputStream,FileReader,FileWriter,BufferedReader,BufferedWriter

任务需求1:

在c盘下创建一个目录homework,目录下创建一个名称为temp1.txt、temp2.txt的文件,

                 1)查看temp1文件是否存在、名称、大小、路径、父目录、可读可写状态等信息;

                 2)往temp1中先后写入"I love Java!"和"我爱Java!好好学习,天天向上!"

              3)读取temp1中的数据,并复制到temp2中去。(用FileInputStream、FileOutputStream、FileReader、FileWriter、Bufferedreader、BufferedWriter、PrintWriter分别实现文件的读写操作)
所需知识点:

       1.运用File类进行文件和目录操作;

       2.用字节流、字符流实现文件的读写;

代码如下:

package cn.demo.main;


import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.nio.CharBuffer;


public class Main {

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

		File file = new File("D:\\homework\\temp1.txt");
		//(1)
		Demo1(file);
		//(2)
		Demo2(file);
		//(3)
		Demo3(file);
	}
	private static void Demo3(File file) throws FileNotFoundException,
			IOException {
		FileReader fr = new FileReader(file);
		BufferedReader br = new BufferedReader(fr);
		File file1 = new File("D:\\homework\\temp2.txt");
		FileWriter fw1 = new FileWriter(file1);
		BufferedWriter bw1 = new BufferedWriter(fw1);
		String newStr = br.readLine() ;
		bw1.write(newStr);
		bw1.flush();
		bw1.close();
		br.close();
	}
	private static void Demo2(File file) {
		try {
			getPrint(file);
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
	public static void getPrint(File file) throws IOException{
		FileWriter fw = new FileWriter(file);
		BufferedWriter bw = new BufferedWriter(fw);
		fw.write("I love Java!");
		fw.write("   ");
		fw.write("我爱Java!好好学习,天天向上!");
		fw.flush();
		fw.close();
	}
	
	private static void Demo1(File file) {
		//boolean exists() 测试此抽象路径名表示的文件或目录是否存在。 
		boolean newFlag = file.exists() ; 
		if(newFlag==true){
			System.out.println("temp1文件存在!");//temp1文件存在!
		}else{
			System.out.println("temp1文件存在!");
		}
		//String getName() 返回由此抽象路径名表示的文件或目录的名称。
		String newName = file.getName() ;
		System.out.println("文件的名称是:"+newName); //文件的名称是:temp1.txt
		long newSize = file.getTotalSpace() ; 
		System.out.println("分区大小为:"+newSize);//分区大小为:136314875904
		//String getPath() 将此抽象路径名转换为路径名字符串。  
		String newPath = file.getPath() ;
		System.out.println("路径字符串为:"+newPath);//D:\homework\temp1.txt
		//String getParent()  返回此抽象路径名的父 null的路径名字符串,如果此路径名未命名为父目录,则返回null。  
		String newParent = file.getParent();
		System.out.println("父类的路径:"+newParent);//D:\homework
	}
}

 

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值