`
rzheny
  • 浏览: 9158 次
最近访客 更多访客>>
社区版块
存档分类
最新评论

文件以及文件的统计

 
阅读更多

File

哎,说起文件就烦,原来就没学会,现在又来一遍讲的还是很快哭

小小的总结一下。。。

1.创建和删除文件

  

/**
	 * 测试文件的创建和删除
	 * @param filename 创建文件的路径
	 * @throws IOException 
	 */
	public void testCreateAndDelete(String filename) throws IOException{
		//通过传入filename构造File对象
		File create=new File(filename);
		//判断文件是否存在
		if(create.exists()){
			System.out.println("该文件路径是"+create.getAbsolutePath());
			create.delete();
			if(create.exists()){System.out.println("还存在。。。。");}
			else{System.out.println("已删除。。。");}
		}
		else{
			create.createNewFile();
			System.out.println("已创建");
			create.delete();
			if(create.exists()){System.out.println("还存在。。。。");}
			else{System.out.println("已删除。。。");}
		}
	}

 创建的话,格式是File 文件名=new File("文件路径");

 删除的话,调用已有的delete方法就ok了。

 还有几个方法是判断是文件file.isFile()、是目录file.isDirectory()、还有获取目录下文件或目录的个数的方法file.llength()。

2.获取根目录下的磁盘个数

  其实调用listRoots()方法就ok了,然后输出的时候注意不能用getName输出,可以用getAbsolutePath()输出

  盘符,还有也可以用getAbsoluteFile();

  

 

 

 

3.统计文件个数

//统计文件或者文件夹中文件的个数
	public int CountNumber(String Filename){
		int n=0;
		//通过传入的filename创建对象
		File countFile=new File(Filename);
		//判断countFile是否存在,分情况处理
		if(countFile.exists()){
			if(countFile.isFile()){n=1;}
			if(countFile.isDirectory()){
				File[] next=countFile.listFiles();
				for(int j=0;j<next.length;j++){//不是很懂,为什么就是要用next.length
					if(next[j].isFile()){
					n++;
					System.out.println("该文件路径是"+next[j].getAbsolutePath());}
					else{
						String pathnameString=next[j].getAbsolutePath();
					    n=n+CountNumber(pathnameString);}
				}
			}
			
		}
		//个人感觉实在没必要,所以没添加。。。
		else{	}
		
		
		return n;
		
	}

 

    最终效果:



 



 

  • 大小: 27.1 KB
  • 大小: 45 KB
  • 大小: 22.8 KB
  • 大小: 65.2 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics