javafile文件夹
删除文件夹下的所有文件需要用到java.io.File类的各个方法,并需要使用简单的递归算法。
示例代码如下:
import java.io.File;
public class Test
{
public static void main(String args[]){
Test t = new Test();
delFolder("c:/bb");
System.out.println("deleted");
}
//删除文件夹
//param folderPath 文件夹完整绝对路径
public static void delFolder(String folderPath) {
try {
delAllFile(folderPath); //删除完里面所有内容
String filePath = folderPath;
filePath = filePath.toString();
java.io.File myFilePath = new java.io.File(filePath);
myFilePath.delete(); //删除空文件夹
} catch (Exception e) {
e.printStackTrace();
}
}
//删除指定文件夹下所有文件
//param path 文件夹完整绝对路径
public static boolean delAllFile(String path) {
boolean flag = false;
File file = new File(path);
if (!file.exists()) {
return flag;
}
if (!file.isDirectory()) {
return flag;
}
String[] tempList = file.list();
File temp = null;
for (int i = 0; i < tempList.length; i++) {
if (path.endsWith(File.separator)) {
temp = new File(path + tempList[i]);
} else {
temp = new File(path + File.separator + tempList[i]);
}
if (temp.isFile()) {
temp.delete();
}
if (temp.isDirectory()) {
delAllFile(path + "/" + tempList[i]);//先删除文件夹里面的文件
delFolder(path + "/" + tempList[i]);//再删除空文件夹
flag = true;
}
}
return flag;
}
}
2. Java如何创建文件夹
file类里面有两个方法可以实现:
一个是mkdir():创建此抽象路径名指定的目录。
另外一个是mkdirs():创建此抽象路径名指定的目录,包括所有必需但不存在的父目录。
比如你想在a文件夹创建一个b文件夹,并在b文件夹下创建c和d文件夹,可以用下面的代码实现:
importjava.io.file;
publicclasstest{
publicstaticvoidmain(stringargs[]){
filefile=newfile("d:\\a\\b\\c");
file.mkdirs();
file=newfile("d:\\a\\b\\d");
file.mkdir();
}
}
希望对你有帮助。。。。仍有问题可以hi我。。。
3. JAVA File类 删除文件
1、创建File对象File(String pathname):pathname录入时录入的路径字符串需要注意/和的运用,但是由于java开发出的程序需要运用到不同的系统上,因此,一般以File.separator来代替。
4. 在Java中用file创建文件夹,然后再在文件夹里创建3个文本文件。。。。详情看图片
importjava.io.BufferedWriter;
importjava.io.File;
importjava.io.FileInputStream;
importjava.io.FileOutputStream;
importjava.io.FileReader;
importjava.io.FilenameFilter;
importjava.io.IOException;
importjava.io.InputStream;
importjava.io.OutputStream;
importjava.io.PrintWriter;
importjava.util.Scanner;
publicclassIOExam{
publicenumFileType{
FILE,DIR
}
_4_Remove=newFilenameFilter(){
@Override
publicbooleanaccept(Filedir,Stringname){
FilethisFile=newFile(dir,name);
returnthisFile.isDirectory()
||(thisFile.isFile()&&name.toLowerCase()
.endsWith(".txt"));
}
};
=newFilenameFilter(){
@Override
publicbooleanaccept(Filedir,Stringname){
returnname.toLowerCase().endsWith(".txt");
}
};
publicstaticvoidmain(String[]args){
Scannersc=newScanner(System.in);
try{
//-----题目1
FileioHOME=newFile("D:\ioHome");
createDir(ioHOME);
createFile(newFile(ioHOME,"first.txt"));
createFile(newFile(ioHOME,"second.txt"));
createFile(newFile(ioHOME,"third.txt"));
createDir(newFile(ioHOME,"java/io/test"));
//-----题目1
File[]files=ioHOME.listFiles(txtFilter);
for(Filefile:files){
System.out.print("请输入:");
writeFile(sc.nextLine(),file);
}
//-----题目3
File(newFile(ioHOME,"first.txt"),newFile(ioHOME,"java"));
File(newFile(ioHOME,"second.txt"),newFile(ioHOME,"java"));
File(newFile(ioHOME,"third.txt"),newFile(ioHOME,"java"));
//-----题目4
removeAndOutputTxtFile(ioHOME);
}catch(Exceptione){
e.printStackTrace();
}
}
privatestaticvoidcreateFile(Filef)throwsIOException{
creatFileOrDir(f,FileType.FILE);
}
privatestaticvoidcreateDir(Filef)throwsIOException{
creatFileOrDir(f,FileType.DIR);
}
(Filefile,FileTypetype)
throwsIOException{
switch(type){
caseDIR:
file.mkdirs();
break;
caseFILE:
file.createNewFile();
break;
default:
break;
}
}
privatestaticvoidFile(Fileinput,Fileoutdir)throwsIOException{
InputStreamis=newFileInputStream(input);
if(!outdir.exists())
outdir.mkdirs();
OutputStreamos=newFileOutputStream(
newFile(outdir,input.getName()));
byte[]buff=newbyte[1024];
intlen=0;
while((len=is.read(buff))>-1){
os.write(buff,0,len);
}
os.flush();
is.close();
os.close();
}
privatestaticStringreadFile(Filefile)throwsIOException{
FileReaderfr=newFileReader(file);
StringBuffersb=newStringBuffer();
char[]buff=newchar[1024];
intlen=0;
while((len=fr.read(buff))>-1){
sb.append(newString(buff,0,len));
}
fr.close();
returnsb.toString();
}
(Filefile){
if(!file.exists())
return;
if(file.isFile()){
try{
System.out.println("删除:"+file);
System.out.println(readFile(file));
}catch(IOExceptione){
e.printStackTrace();
}
file.delete();
}else{
for(Filef:file.listFiles(txtFilter_4_Remove)){
removeAndOutputTxtFile(f);
}
}
}
privatestaticvoidwriteFile(Stringcontent,Filefile)throwsIOException{
PrintWriterpw=newPrintWriter(file);
BufferedWriterbw=newBufferedWriter(pw);
bw.write(content);
bw.flush();
pw.close();
bw.close();
}
}
5. java中file怎么在指定的文件夹中创建多个文件
具体的创建方法参照下面的实例:
public class FileTest {
publicstaticvoidmain(String[]args){
//根据系统的实际情况选择目录分隔符(windows下是,linux下是/)
Stringseparator=File.separator;
Stringdirectory="myDir1"+separator+"myDir2";
//以下这句的效果等同于上面两句,windows下正斜杠/和反斜杠都是可以的
//linux下只认正斜杠,为了保证跨平台性,不建议使用反斜杠(在java程序中是转义字符,用来表示反斜杠)
//Stringdirectory="myDir1/myDir2";
StringfileName="myFile.txt";
//在内存中创建一个文件对象,注意:此时还没有在硬盘对应目录下创建实实在在的文件
Filef=newFile(directory,fileName);
if(f.exists()){
//文件已经存在,输出文件的相关信息
System.out.println(f.getAbsolutePath());
System.out.println(f.getName());
System.out.println(f.length());
}else{
//先创建文件所在的目录
f.getParentFile().mkdirs();
try{
//创建新文件
f.createNewFile();
}catch(IOExceptione){
System.out.println("创建新文件时出现了错误。。。");
e.printStackTrace();
}
}
}
}
6. java怎样用File类拷贝文件夹
使用 java.io.File listFiles得到列表, 判断是文件夹则创建、文件则拷贝
~~~~~~~~~~~~~~~
7. java 种的File类是用来做什么的有什么用处(追加40分)
File类是用来操作文件及目录(文件夹)的,你可以抛开别的,只是想想,
能对文件及目录干什么?无非就是创建文件或目录,删除、修改文件的内容等简单操作。再就是通过遍历文件做某些操作。File类就是干这些的。你再依据以下小程序理解下File类的操作就觉得简单了。
File
f
=
new
File("d://123.txt");//你可以把它理解为告诉File类要操作的路径,但是还没让它操作。
f.createNewFile()
;//创建文件,如果创建成功返回true
f.delete()
;//删除文件,如果删除成功返回true
。。。
8. java 中的file中怎么删除全部文件夹
可参考如下代码,代码说明写代码后注释上
示例代码如下:
importjava.io.File;
publicclassTest
{
publicstaticvoidmain(Stringargs[]){
Testt=newTest();
delFolder("c:/bb");
System.out.println("deleted");
}
//删除文件夹
//paramfolderPath文件夹完整绝对路径
publicstaticvoiddelFolder(StringfolderPath){
try{
delAllFile(folderPath);//删除完里面所有内容
StringfilePath=folderPath;
filePath=filePath.toString();
java.io.FilemyFilePath=newjava.io.File(filePath);
myFilePath.delete();//删除空文件夹
}catch(Exceptione){
e.printStackTrace();
}
}
//删除指定文件夹下所有文件
//parampath文件夹完整绝对路径
publicstaticbooleandelAllFile(Stringpath){
booleanflag=false;
Filefile=newFile(path);
if(!file.exists()){
returnflag;
}
if(!file.isDirectory()){
returnflag;
}
String[]tempList=file.list();
Filetemp=null;
for(inti=0;i<tempList.length;i++){
if(path.endsWith(File.separator)){
temp=newFile(path+tempList[i]);
}else{
temp=newFile(path+File.separator+tempList[i]);
}
if(temp.isFile()){
temp.delete();
}
if(temp.isDirectory()){
delAllFile(path+"/"+tempList[i]);//先删除文件夹里面的文件
delFolder(path+"/"+tempList[i]);//再删除空文件夹
flag=true;
}
}
returnflag;
}
}