Java中File类的使用
2016-07-20 09:12
302 查看
java.io.File类用于表示文件(目录)
File类只用于表示文件(目录)的信息(名称、大小等),不能用于文件内容的访问
列出File的一些常用操作,过滤、遍历等
RandomAccessFile java提供的对文件内容的访问,既可以读文件,也可以写文件
RandomAccessFile支持随机访问文件,可以访问文件的任意位置
(1)Java文件模型
在硬盘上的文件是byte byte byte存储的,是数据的集合
(2)打开文件
有两种模式,“rw”(读写)“r”(只读)
RandomAccessFile raf = new RandomAccessFile(file,"rw");
文件指针,打开文件时指针在开头 pointer = 0;
(3)写文件
raf.write(int)
(4)读文件
int b = raf.read()
(5)文具读写完成以后一定要关闭
File类只用于表示文件(目录)的信息(名称、大小等),不能用于文件内容的访问
import java.io.File; import java.io.IOException; public class FileDemo { public static void main(String[] args) throws IOException { //创建文件夹 File file = new File("G:\\imooc\\test"); if(!file.exists()){ file.mkdir(); System.out.println("文件夹创建成功"); }else{ file.delete(); System.out.println("文件夹删除成功"); } //创建文件 File file2 = new File("G:\\imooc","fileDemo.txt"); if(!file2.exists()){ file2.createNewFile(); System.out.println("文件创建成功"); }else{ file2.delete(); System.out.println("文件删除成功"); } //判断是否是一个目录,如果是目录返回true,如果不是目录或目录不存在,返回false System.out.println("判断是否为目录:"+file.isDirectory()); //判断是否是一个文件 System.out.println("判断是否为文件:"+file2.isFile()); //打印路径 System.out.println(file); System.out.println(file2.getAbsolutePath()); //打印文件名,打印的是最后的文件文字 System.out.println(file.getName()); System.out.println(file2.getName()); //访问父文件 System.out.println(file.getParent()); } }
列出File的一些常用操作,过滤、遍历等
import java.io.File; import java.io.IOException; /** * 列出File的一些常用操作,过滤、遍历等 * @author lenovo * */ public class FileUtil { /** * 列出指定目录下(包括其子目录)的所有文件 */ public static void listDirectory(File dir)throws IOException{ if(!dir.exists()){ throw new IllegalArgumentException("目录:"+dir+"不存在"); } if(!dir.isDirectory()){ throw new IllegalArgumentException(dir+"不是目录"); } //list()方法用于列出当前目录下的子目录和文件,返回的是字符串数组,只是子文件名称,不包含子文件下的内容 String[] filename = dir.list(); for (String string : filename) { System.out.println(dir+"\\"+string); } System.out.println("-----------------"); //如果要遍历子目录下的内容,就需要构造成File对象做递归操作,File提供了返回子对象的API File[] files = dir.listFiles();//返回的直接子目录(文件)的抽象 if(files != null && files.length>0){ for (File file : files) { if(file.isDirectory()){ listDirectory(file); }else{ System.out.println(file); } } } } }
RandomAccessFile java提供的对文件内容的访问,既可以读文件,也可以写文件
RandomAccessFile支持随机访问文件,可以访问文件的任意位置
(1)Java文件模型
在硬盘上的文件是byte byte byte存储的,是数据的集合
(2)打开文件
有两种模式,“rw”(读写)“r”(只读)
RandomAccessFile raf = new RandomAccessFile(file,"rw");
文件指针,打开文件时指针在开头 pointer = 0;
(3)写文件
raf.write(int)
(4)读文件
int b = raf.read()
(5)文具读写完成以后一定要关闭
相关文章推荐
- java异常
- ATL模型转换技术详解
- java 的Collection接口实例详解
- java中变量作用域、基本数据的包装类
- Java单例模式
- Spring中jdbcTemplate的用法实例(一)
- 解决java.lang.IncompatibleClassChangeError
- 主流框架 springmvc +jdbctemplate
- Spring MVC RESTful风格URL welcome-file-list不起作用问题解决
- Java 动态代理
- Java程序:使用LinkedList存储扑克牌,实现洗牌功能
- 能够提高开发效率的Eclipse实用操作
- Java 开发之Spring MVC(一)
- Quartz定时器错误信息,java.lang.NoSuchMethodError: org.quartz.SchedulerException
- iText生成pdf中文字体解决方案
- LocaleChangeInterceptor spring动态改变当地语言
- java开发之准备知识
- Javassist library is missing in classpath! Please add missed dependency!异常
- WebService-wsimport
- eclipse开发效率提升