Java_IO_1_File类
2017-09-04 23:09
323 查看
教程自 尚硅谷 宋红康
java.io.File类
* 1.凡是与输入、输出相关的类、接口等都定义在java.io包下
* 2.File是一个类,可以有构造器创建其对象。此对象对应着一个文件(.txt .avi .doc .ppt .mp3 .jpg)或文件目录
* 3.File类对象是与平台无关的。
* 4.File中的方法,仅涉及到如何创建、删除、重命名等等。只要涉及文件内容的,File是无能为力的,必须由io流来完成。
* 5.File类的对象常作为io流的具体类的构造器的形参。
一简介
1、java.io.File类:文件和目录路径名的抽象表示形式,与平台无关
2、File 能新建、删除、重命名文件和目录,但 File 不能访问文件内容本身。如果需要访问文件内容本身,则需要使用输入/输出流。
3、File对象可以作为参数传递给流的构造函数
二、File类的常见构造方法:
1、public File(String pathname)
以pathname为路径创建File对象,可以是绝对路径或者相对路径,如果pathname是相对路径,则默认的当前路径在系统属性user.dir中存储。
2、public File(String parent,String child)
以parent为父路径,child为子路径创建File对象。
3、File的静态属性String separator存储了当前系统的路径分隔符。
在UNIX中,此字段为‘/’,在Windows中,为‘\’
三、File类的方法
1、访问文件名:
getName()
getPath()
getAbsoluteFile()
getAbsolutePath()
getParent()
renameTo(File newName)
2、文件检测
exists()
canWrite()
canRead()
isFile()
isDirectory()
3、获取常规文件信息
lastModified()
length()
4、文件操作相关
createNewFile()
delete()
5、目录操作相关
mkDir()
mkDirs()
list()
listFiles()
四、File类的操作
五、代码示例
1、文件名相关操作
2、文件检测相关操作,返回的boolean
3、文件和目录相关操作
java.io.File类
* 1.凡是与输入、输出相关的类、接口等都定义在java.io包下
* 2.File是一个类,可以有构造器创建其对象。此对象对应着一个文件(.txt .avi .doc .ppt .mp3 .jpg)或文件目录
* 3.File类对象是与平台无关的。
* 4.File中的方法,仅涉及到如何创建、删除、重命名等等。只要涉及文件内容的,File是无能为力的,必须由io流来完成。
* 5.File类的对象常作为io流的具体类的构造器的形参。
一简介
1、java.io.File类:文件和目录路径名的抽象表示形式,与平台无关
2、File 能新建、删除、重命名文件和目录,但 File 不能访问文件内容本身。如果需要访问文件内容本身,则需要使用输入/输出流。
3、File对象可以作为参数传递给流的构造函数
二、File类的常见构造方法:
1、public File(String pathname)
以pathname为路径创建File对象,可以是绝对路径或者相对路径,如果pathname是相对路径,则默认的当前路径在系统属性user.dir中存储。
2、public File(String parent,String child)
以parent为父路径,child为子路径创建File对象。
3、File的静态属性String separator存储了当前系统的路径分隔符。
在UNIX中,此字段为‘/’,在Windows中,为‘\’
三、File类的方法
1、访问文件名:
getName()
getPath()
getAbsoluteFile()
getAbsolutePath()
getParent()
renameTo(File newName)
2、文件检测
exists()
canWrite()
canRead()
isFile()
isDirectory()
3、获取常规文件信息
lastModified()
length()
4、文件操作相关
createNewFile()
delete()
5、目录操作相关
mkDir()
mkDirs()
list()
listFiles()
四、File类的操作
File dir1 = new File("D:/IOTest/dir1"); if (!dir1.exists()) { // 如果D:/IOTest/dir1不存在,就创建为目录 dir1.mkdir(); } // 创建以dir1为父目录,名为"dir2"的File对象 File dir2 = new File(dir1, "dir2"); if (!dir2.exists()) { // 如果还不存在,就创建为目录 dir2.mkdirs(); } File dir4 = new File(dir1, "dir3/dir4"); if (!dir4.exists()) { dir4.mkdirs(); } // 创建以dir2为父目录,名为"test.txt"的File对象 File file = new File(dir2, "test.txt"); if (!file.exists()) { // 如果还不存在,就创建为文件 file.createNewFile();}
五、代码示例
1、文件名相关操作
/* * 路径: * 绝对路径:包括盘符在内的完整的文件路径 * 相对路径:在当前文件目录下的文件的路径 * * getName() getPath() getAbsoluteFile() getAbsolutePath() getParent() renameTo(File newName) */ @Test public void test1(){ File file1 = new File("d:/io/helloworld.txt"); File file2 = new File("hello1.txt"); File file3 = new File("d:\\io\\io1"); File file4 = new File("d:\\io2"); System.out.println(file1.getName()); System.out.println(file1.getPath()); System.out.println(file1.getAbsoluteFile()); System.out.println(file1.getParent()); System.out.println(file1.getAbsolutePath()); System.out.println(); System.out.println(file3.getName()); System.out.println(file3.getPath()); System.out.println(file3.getAbsoluteFile()); System.out.println(file3.getParent()); System.out.println(file3.getAbsolutePath()); //renameTo(File newName):重命名 //file1.renameTo(file2):file1重命名为file2.要求:file1文件一定存在,file2一定不存在 boolean b = file1.renameTo(file2); System.out.println(b); boolean b1 = file4.renameTo(file3); System.out.println(b1); }
2、文件检测相关操作,返回的boolean
/* * exists() canWrite() canRead() isFile() isDirectory() lastModified() length() */ @Test public void test2(){ File file1 = new File("d:/io/helloworld.txt"); File file2 = new File("d:\\io\\io1"); System.out.println(file1.exists()); System.out.println(file1.canWrite()); System.out.println(file1.canRead()); System.out.println(file1.isFile()); System.out.println(file1.isDirectory()); System.out.println(new Date(file1.lastModified())); System.out.println(file1.length()); System.out.println(); System.out.println(file2.exists()); System.out.println(file2.canWrite()); System.out.println(file2.canRead()); System.out.println(file2.isFile()); System.out.println(file2.isDirectory()); System.out.println(new Date(file2.lastModified())); System.out.println(file2.length()); }
3、文件和目录相关操作
/* * createNewFile() delete() mkDir():创建一个文件目录。只有在上层文件目录存在的情况下,才能返回true mkDirs():创建一个文件目录。若上层文件目录不存在,一并创建 list() listFiles() */ @Test public void test3() throws IOException{ File file1 = new File("d:/io/helloworld.txt"); System.out.println(file1.delete()); if(!file1.exists()){ boolean b = file1.createNewFile(); System.out.println(b); } File file2 = new File("d:\\io1\\io2"); if(!file2.exists()){ boolean b = file2.mkdirs(); System.out.println(b); } File file3 = new File("d:\\teach"); String[] strs = file3.list(); for(int i = 0;i < strs.length;i++){ System.out.println(strs[i]); } System.out.println(); File[] files = file3.listFiles(); for(int i = 0;i < files.length;i++){ System.out.println(files[i].getName()); } }
相关文章推荐
- JAVA高级视频_IO输入与输出_File类_笔记
- 黑马程序员——Java基础---IO(二)--File类、Properties类、打印流、序列流(合并流)
- java io知识点汇总FIle类
- 黑马程序员—【Java基础篇】之IO流(二)———File类、递归、IO其它流和编码表
- 黑马程序员——java之IO体系中File类、编码问题、对象序列化
- 黑马程序员——Java基础---IO(二)--File类、Properties类、打印流、序列流(合并流)
- java常用类解析五:IO系统File类及文件搜索工具类
- Java的IO操作(一) – File类,RandomAccessFile类,FileInputStream、FileOutputStream类
- java基础-IO-File类、Properties类、打印流、序列流、字符编码
- [Java IO]01_File类和RandomAccessFile类
- 【JAVA IO】_File类笔记
- Java中的IO File类创建名字new.txt文件 是否成功创建问题
- Java学习笔记——File类文件管理及IO读写、复制操作
- JAVA IO(二)File类详解
- Java基础---IO(二)--File类、Properties类、打印流、序列流(合并流)
- Java基础---IO(二)--File类、Properties类、打印流、序列流(合并流) (黑马程序员)
- java基础之IO File类和序列化Object
- Java-IO-File类
- Java IO File类
- 【Java】File类文件管理及IO读写、复制操作