File类在java.io包中,可以通过File类来创建文件对象,并进行删除文件等File类中的常用函数:1、构造器File(File parent,String child)在一个父文件对象下创建一个名字为child的文件对象File(String pathname)创建一个指向pathname的File对象File(String parent,String child)以一个名为parent字符串为父目录名,创建一个指向名为child的文件对象 当使用File的构造器创建File对象时,仅仅是在JVM内存中生成了一个File类型的对象——此时与磁盘上的文件无关联,只有当调用这个对象的其他方法时,这个对象才会关联到即指向磁盘上的某个文件2、重要方法boolean exists()判断File对象指向的文件是否存在String getName()得到不带路径的文件名boolean isDirectory()判断File对象指向的文件是否是目录boolean isFile()判断File对象指向的文件是否是文件long length()得到File对象指向的文件长度,以byte计,如若指向目录,返回0File [] listFiles()将File对象指向的文件的下一级的所有目录和真实文件作为一个数组返回,其中真实文件返回值是null;
异常处理常见的异常关键字:1、try{ 可能抛出异常的代码... //如果没有出现异常执行的代码A A:其他计算代码 } catch(Exception ef){ //如果出现异常后执行的代码B B:出现异常后执行的代码 }finally{ //不管是否出现异常,都将执行finally中的语句 } 当程序运行到try部分时,若代码没有出现异常,则将try部分的代码(A)执行完毕后跳过catch部分的代码;若try部分的代码出现异常则不执行(A),执行catch中的(B)
import java.io.*;
/**
* 测试File类中的所有方法
* @author jsyczynba
*
*/
public class FileTest {
public static void main(String [] args) {
FileTest ft = new FileTest();
ft.Test();
}
/**
* 测试方法类
*
*/
public void Test() {
//文件的绝对路径
String path1 = "G:\\FileTest\\Test\\Test1\\a.txt";
String path2 = "G:\\FileTest\\Test3";
//创建文件对象
File fp1 = new File(path1);
File fp2 = new File(path2);
//测试应用程序是否可以执行此抽象路径名表示的文件
boolean b1 = fp1.canExecute();
System.out.println("文件1是否可执行"+b1);
//测试应用程序是否可以读取此抽象路径名表示的文件
boolean b2 = fp1.canRead();
System.out.println("文件1是否可读"+b1);
//测试应用程序是否可以修改此抽象路径名表示的文件
boolean b3 = fp2.canWrite();
System.out.println("文件2是否可修改"+b3);
//按字母顺序比较两个抽象路径名。
int t1 = fp1.compareTo(fp2);
System.out.println(t1);
//测试此抽象路径名表示的文件或目录是否存在
boolean b4 = fp1.exists();
//如果存在 就删除此文件
if (b4) {
//删除此抽象路径名表示的文件或目录
boolean b5 = fp1.delete();
System.out.println("文件1存在"+b4+"文件1删除"+b5);
}else {
System.out.println("文件1不存在");
// 如果不存在 就创建1个新的文件
try {
boolean b6 = fp1.createNewFile();
System.out.println("是否创建"+ b6);
} catch(Exception ep) {
ep.printStackTrace();
}
}
//返回此抽象路径名的绝对路径名字符串
String str = fp2.getAbsolutePath();
System.out.println("文件2的绝对路径"+str);
//返回由此抽象路径名表示的文件或目录的名称。
String str1 = fp2.getName();
System.out.println("文件2的名称"+str1);
//返回此抽象路径名指定的分区中未分配的字节数
long lo = fp1.getFreeSpace();
System.out.println("文件1的未分配的字节"+lo);
// 测试此抽象路径名表示的文件是否是一个目录。
boolean bo1 = fp1.isDirectory();
boolean bo2 = fp2.isDirectory();
System.out.println("文件1是目录"+bo1+"文件2是目录"+bo2);
}
}
/**
* 统计指定目录下的文件个数,文件夹个数,总大小
* @author jsyczynba
*
*/
public class FileCount {
/**
* 运行类
*/
public static void main(String [] args) {
FileCount fc = new FileCount();
String path = "G:\\ThinkingInJava";
int t1 = fc.countDirtcts(path);
int t2 =fc.countFlies(path);
System.out.println("指定路径下的文件夹有" + t1 +"<>"+ "文件有" + t2);
}
/**
* 统计文件个数并得到总文件大小
* @path : 传入的地址
* @return
*/
public int countFlies(String path) {
//设置计数器
int count = 0;
//根据路径创建一个文件对象
java.io.File file = new java.io.File(path);
//判断给定的地址是否存在
if (!file.exists()) {
System.out.println("所给的文件地址不存在!");
} else {
//判断传入地址是否是文件夹
if(file.isFile()) {//如果是文件就返回1
return 1;
} else {// 如果是文件夹
//将指定路径下的文件目录中的所有文件装入文件数组
java.io.File[] fe = file.listFiles();
//遍历文件数组
for (int i = 0; i < fe.length; i++) {
//得到文件的绝对路径
String str = fe[i].getAbsolutePath();
//如果是文件, count++
if(fe[i].isFile()){
count++;
System.out.println("找到一个文件:" + str);
} else if (fe[i].isDirectory()){//如果是文件夹 就递归调用
count += countFlies(str);
}
}
}
}
return count;
}
/**
* 统计文件夹个数
* @path : 传入的地址
* @return
*/
public int countDirtcts(String path) {
//设置计数器
int count = 0;
//根据路径创建一个文件对象
java.io.File file = new java.io.File(path);
//判断给定的地址是否存在
if (!file.exists()) {
System.out.println("所给的文件地址不存在!");
} else {
//判断传入地址是否是文件夹
if(file.isFile()) {//如果是文件就返回0
return 0;
} else if(file.isDirectory()) {// 如果是文件夹
java.io.File[] fe = file.listFiles();//将指定路径下的文件目录中的所有文件装入文件数组
//遍历文件数组
for (int i = 0; i < fe.length; i++) {
//得到文件的绝对路径
String str = fe[i].getAbsolutePath();
if (fe[i].isDirectory()){//如果是文件夹 就递归调用
count++;
count += countDirtcts(str);
}
}
}
}
return count;
}
}
import java.io.File;
public class FileSearch {
/**
* 在指定的绝对路径中查找指定的字符串
* @param path 绝对路径
* @param srcStr 要查找的字符串
*/
public void searchPath(String path,String srcStr) {
File file=new File(path);
if(file.isDirectory()) {
File[] fileList=file.listFiles();
for(int i=0;i<fileList.length;i++) {
if(fileList[i].isDirectory()) {//是目录就调用递归
searchPath(fileList[i].getAbsolutePath(),srcStr);
} else {
String s =fileList[i].getAbsolutePath();
String s1 = srcStr;
int index = s.indexOf(s1);
if (index != -1) {
System.out.println(s);
}
}
}
}
}
public static void main(String[] args) {
String path="G:\\ThinkingInJava";
String srcStr="index";
FileSearch s=new FileSearch();
s.searchPath(path, srcStr);
System.out.println("执行完毕!");
}
}
分享到:
相关推荐
java文件操作类java文件操作类java文件操作类java文件操作类java文件操作类java文件操作类java文件操作类java文件操作类java文件操作类java文件操作类java文件操作类java文件操作类java文件操作类java文件操作类java...
Java文件操作封装类
java文件操作工具类是java中针对文件操作的一个工具类,可以方便的读取,下载,上传文件等操作,希望可以帮到大家。
Java文件操作是编程中常见的任务,涉及到文件的创建、删除、读取、写入以及更复杂的操作如复制、移动、加密、压缩等。以下是一些关键的Java文件操作知识点: 1. **创建文件夹**:使用`java.io.File`类的`mkdir()`或...
java视频教程 Java文件操作 JavaFile
如何在Java中操作文件呢?转载供大家欣赏
本项目"java文件操作(增删改查)"是基于控制台实现的一个无界面程序,利用Eclipse集成开发环境编写,实现了基本的文件管理功能。下面我们将深入探讨这些知识点。 首先,我们要了解Java中的`java.io`包,它是处理输入...
Java文件操作一例:Copy 复制文件,虽然是复制文件,不过通过本源码你可以学习很多相关的Java基础技巧,比如Java对文件的事件处理、取得目录内容的事件处理、如何弹出文件选择器、如何得到选择文件的绝对路径、如何...
java文件操作大全.chm
java 文件操作 压缩文件 解压文件 复制文件 复制文件夹
java 文件操作工具类
java 文件操作 包括 文件删除 导出jsp Word 格式文件 ,文件合并修改等。
《Java文件操作大全》电子书 本文汇集常用文件操作方法,包括文件的建立/检查与删除,目录的建立/检查与删除,取出目录中文件,文件属性的取得,逐行读取数据等等。
在Java编程语言中,文件操作是一项基础且重要的任务,它涉及到对文件的读取、写入、创建、删除等操作。文件操作主要依赖于Java的I/O(Input/Output)库,包括字节流(Byte Stream)和字符流(Character Stream),...
最全的java文件操作大全,包括文件的存储,建立,判断文件是否存在,建立文件删除文件,附加源码!!!
java 文件操作 ;base64--转码与解码 ;excel --读写 ;properties--读 ; txt--读写 ; xml --读写 ;压缩包-- 解压,打包; zip --解压,打包 ;调用本地exe
Java文件操作中的一些常用方法的总结,可以参考参考啦!