Java IO上---File类
无论到任何时候Java IO这部分在Java语言中有着举足轻重的地位,那么今天我就想对IO进行一些归纳总结;
删除文件:public boolean delete()
判断文件是否存在:public boolean exists()
?
package com.iflytek.io;import java.io.File;import java.io.IOException;/** * @author xudongwang 2012-1-7 * * Email:xdwangiflytek@gmail.com */public class CreatDeleteFileDemo {public static void main(String[] args) {File file = new File("D:" + File.separator + "demo.txt");// 找到File类的实例if (file.exists()) {// 如果存在file.delete();} else {// 如果不存在try {file.createNewFile();// 创建文件} catch (IOException e) {e.printStackTrace();}}}}?这里需要注意一下的是在各个操作系统中,文件的分隔符是不一样的:
路径分隔符:public staticfinal String pathSeparator;“.”
?
package com.iflytek.io;import java.io.File;/** * @author xudongwang 2012-1-7 * * Email:xdwangiflytek@gmail.com */public class IsFile {public static void main(String[] args) {File file1 = new File("d:" + File.separator + "demo.txt");// 指定File的路径File file2 = new File("d:" + File.separator + "demo");System.out.println(file1.isFile());// 判断是否是文件System.out.println(file2.isDirectory());// 判断是否是目录}}?在File类中提供对目录列表的操作:
?????? public String[] list():列出一个目录下的文件或文件名
?
package com.iflytek.io;import java.io.File;/** * @author xudongwang 2012-1-7 * * Email:xdwangiflytek@gmail.com */public class FileList {public static void main(String[] args) {File file = new File("D:");// 找到File实例String path[] = file.list();for (int i = 0; i < path.length; i++) {System.out.println(path[i]);}}}? public File[] listFiles():列出完整路径
?
package com.iflytek.io;import java.io.File;/** * @author xudongwang 2012-1-7 * * Email:xdwangiflytek@gmail.com */public class FileList02 {public static void main(String[] args) {File file = new File("d:");File path[] = file.listFiles();for (int i = 0; i < path.length; i++) {// 返回此抽象路径名父目录的路径名字符串;如果此路径名没有指定父目录,则返回 null。System.out.print(path[i].getParent() + "-->");// 将此抽象路径名转换为一个路径名字符串。System.out.println(path[i].getPath());}}}?File类中提供了创建目录的方法:public boolean mkdir()
?
package com.iflytek.io;import java.io.File;/** * @author xudongwang 2012-1-7 * * Email:xdwangiflytek@gmail.com */public class CreateDir {public static void main(String[] args) {File file = new File("d:" + File.separator + "demo");file.mkdir();}}?package com.iflytek.io;
?
import java.io.File;import java.io.IOException;/** * @author xudongwang 2012-1-7 * * Email:xdwangiflytek@gmail.com */public class CreateDir02 {public static void main(String[] args) {File file = new File("d:" + File.separator + "demo" + File.separator+ "demo.txt");file.getParentFile().mkdir();// 创建d:\demo文件夹try {file.createNewFile();// 创建文件} catch (IOException e) {e.printStackTrace();}}}?这里很容易有这个经典问题,递归列出此目录中的所有文件路径,包括各个子文件中的文件:
package com.iflytek.io;import java.io.File;/** * @author xudongwang 2012-1-7 * * Email:xdwangiflytek@gmail.com */public class DiGuiFileList {public static void main(String[] args) {File file = new File("d:" + File.separator);list(file);}public static void list(File file) {if (file.isDirectory()) {// 如果是目录File lists[] = file.listFiles();if (lists != null) {for (int i = 0; i < lists.length; i++) {list(lists[i]);// 递归}}}System.out.println(file);}}?
?