Java api 文件基本的输入输出流

示例一:

import java.io.File;
import java.text.SimpleDateFormat;
import java.util.Date;

/**
 * java.io.File
 * 该类用于表示一个文件或目录
 * 使用该类可以获取表示的文件或目录的属性信息。
 * 但是不能访问文件的内容。
 * 使用该类还可以操作文件或目录(新建,删除等)
 * @author Administrator
 *
 */
public class FileDemo1 {
	public static void main(String[] args) {
		/*
		 * 创建一个File用来表示项目根目录下的test.txt
		 * 文件
		 */
		File file = new File("."+File.separator+"test.txt");
		
		/*
		 * 判断表示的文件是否真实存在于硬盘上
		 * boolean exists()
		 * 存在返回true
		 */
		if(file.exists()){
			System.out.println("文件存在!");
		}else{
			System.out.println("文件不存在!");
		}
		
		/*
		 * long length()
		 * 查看当前文件占用的字节量
		 */
		long length = file.length();
		System.out.println("占用:"+length+"字节");
		
		/*
		 * boolean isFile()
		 * 判断当前File对象表示的是否是一个文件
		 * 是则返回true
		 */
		if(file.isFile()){
			System.out.println("是文件");
		}else{
			System.out.println("不是文件");
		}
		/*
		 * boolean isDirectory()
		 * 判断当前File对象表示的是否为一个目录
		 */
		if(file.isDirectory()){
			System.out.println("是目录");
		}else{
			System.out.println("不是目录");
		}
		/*
		 * 一下三个方法返回boolean值
		 * 分别表示:
		 * 可运行,可读,可写
		 */
		file.canExecute();
		file.canRead();
		file.canWrite();
		
		/*
		 * 文件的最后修改时间
		 * long表示1970年元旦到这一刻的毫秒值
		 * 
		 * 2015年4月9日 16:37:38
		 */
		long last = file.lastModified();
		Date date = new Date(last);
		
		SimpleDateFormat sdf
			= new SimpleDateFormat("yyyy年M月d日 HH:mm:ss");
		String str = sdf.format(date);
		System.out.println(str);
		
		/*
		 * String getName()
		 * 获取当前File对象表示的文件或目录的名字
		 */
		String name = file.getName();
		System.out.println("名字:"+name);
		
	}
}

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

/**
 * 使用File对象新建一个文件
 * @author Administrator
 *
 */
public class FileDemo2 {
	public static void main(String[] args) throws IOException {
		/*
		 * 在当前项目根目录下创建文件demo.txt
		 */
		File file = new File("demo.txt");
		//若不存在才创建
		if(!file.exists()){
			/*
			 * 创建文件
			 */
			file.createNewFile();
			System.out.println("创建完毕!");
		}
		
	}
}

import java.io.File;

/**
 * 删除一个文件
 * @author Administrator
 *
 */
public class FileDemo3 {
	public static void main(String[] args) {
		/*
		 * 删除项目根目录下的demo.txt文件
		 */
		File file = new File("demo.txt");
		if(file.exists()){
			/*
			 * 删除该文件
			 */
			file.delete();
			System.out.println("删除完毕!");
		}
	}
}
示例二:

import java.io.File;

/**
 * 查看一个目录下的所有子项
 * @author Administrator
 *
 */
public class FileDemo1 {
	public static void main(String[] args) {
		/*
		 * 查看当前项目根目录下的所有子项
		 */
		File dir = new File(".");
		/*
		 * File[] listFiles()
		 * 将当前目录下的每一个子项用一个File对象去描述
		 * 然后将他们存入一个数组返回
		 */
		File[] subs = dir.listFiles();
		
		for(File sub : subs){
			if(sub.isFile()){
				System.out.print("文件:");
			}
			if(sub.isDirectory()){
				System.out.print("目录:");
			}
			System.out.println(sub.getName());
		}
		
	}
}

import java.io.File;
import java.io.FileFilter;

/**
 * 使用文件过滤器FileFilter来获取一个目录下
 * 满足条件的部分子项
 * @author Administrator
 *
 */
public class FileDemo2 {
	public static void main(String[] args) {
		/*
		 * 使用匿名内部类方式创建文件过滤器
		 * java.io.FileFilter本身是一个接口
		 */
		FileFilter filter = new FileFilter(){
			/**
			 * 实现FileFilter接口后必须重写accept方法
			 * 该方法用于定义过滤条件。若参数file满足
			 * 过滤条件返回值就为true即可
			 */
			public boolean accept(File file) {	
				System.out.println("正在过滤:"+file.getName());
				//过滤条件:只要文件,不要目录
				return file.isFile();
			}
		};
		
		File dir = new File(".");
		/*
		 * 获取当前目录下满足过滤器要求的所有子项
		 */
		File[] subs = dir.listFiles(filter);
		
		for(File sub : subs){
			System.out.println(sub.getName());
		}
			
		
	}
}

import java.io.File;

/**
 * 删除给定的File对象
 * 该对象可能表示文件也可能表示目录。总之要删除
 * @author Administrator
 *
 */
public class FileDemo3 {
	public static void main(String[] args) {
		File dir = new File("a");
		delete(dir);
	}
	/**
	 * 将给定的File对象表示的文件或目录删除
	 * @param file
	 */
	public static void delete(File file){
		if(file.isDirectory()){
			//先将所有子项删除
			File[] subs = file.listFiles();
			for(File sub : subs){
				delete(sub);
			}
		}	
		file.delete();
		
	}
}


/*
 * 编写一段代码,完成1+2+3+4...+100
 * 每加一次输出一次结果
 * 不得超过20行代码
 * 一行一句代码。
 * 在代码中不得出现for while等关键字
 */
示例三:

import java.io.File;
import java.io.FileNotFoundException;
import java.io.RandomAccessFile;

/**
 * java.io.RandomAccessFile
 * 该类用于读写文件数据
 * @author Administrator
 *
 */
public class RandomAccessFileDemo1 {
	public static void main(String[] args) throws FileNotFoundException {
		/*
		 * RandomAccessFile的两种创建模式
		 * 读写模式与只读模式
		 * 读写模式:可以读取文件数据,也可以向文件中写入数据
		 * 只读模式:只能
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值