1. 程式人生 > >指定一個文件夾自動計算出其總容量 並且進行目錄下文件的添加 與指定文件的訪問

指定一個文件夾自動計算出其總容量 並且進行目錄下文件的添加 與指定文件的訪問

文件屬性 lose bsp imp image 磁盤文件 read 訪問 目錄

代碼實現:

//編寫一個程序,指定一個文件夾,能自動計算出其總容量
import java.io.*;
public class Denglu
{
public static void main(String[] args) throws IOException
{
try
{
InputStreamReader isr=new InputStreamReader(System.in);
BufferedReader inp=new BufferedReader(isr);//進行字節字符轉換 用於鍵盤輸入
String sdir="C:\\Users\\888888\\Desktop\\05.StreamAndFileSourceCode\\File";//文件
int count=0;//計算文件數目
File fdir1=new File(sdir);//創建文件夾
if(fdir1.exists()&&fdir1.isDirectory())
{
System.out.println(sdir+"存在");
String[] f1=fdir1.list();//列表 下面區分list()和listFile()
/*File f=new File("c:\\");
String[] f1=f.list();
File[] f2=f.listFiles();
① list() 返回一個字符串數組,這些字符串指定此抽象路徑名表示的目錄中的文件和目錄。
以C盤為例,返回的是c盤下文件夾名字的字符串數組,如[TEMP, Windows]
②listFiles() 返回一個抽象路徑名數組,這些路徑名表示此抽象路徑名表示的目錄中的文件。
以C盤為例返回的是C盤下文件夾目錄地址,如[c:\TEMP, c:\Windows]*/

for(int i=0;i<f1.length;i++)
{
System.out.println(f1[i]);//輸出文件夾下的文件
count++;
}
System.out.println("一共有"+count+"文件");

//在目錄下添加文件 名字jiahui
File fdir2=new File("C:\\\\Users\\\\888888\\\\Desktop\\\\05.StreamAndFileSourceCode\\\\File\\jiahui");
if(!fdir2.exists())
{
fdir2.mkdir();//如果不存在就創建 肯定不存在你指定的
}
count=0;
System.out.println("建立新的文件夾後: ");
for(int i=0;i<f1.length;i++)
{
System.out.println(f1[i]);//再一次輸出目錄下的問價及總數
count++;
}
System.out.println("一共有"+count+"文件");
}
System.out.println("請輸入一個文件名字:");//對其中一個文件屬性訪問
String sfile=inp.readLine();
File ffile=new File(fdir1,sfile);//用一個已經存在代表某磁盤文件夾的fdir1對象作為文件夾 以sfile作為文件名字
if (ffile.isFile())
{
System.out.println(ffile.getName());
System.out.println(ffile.getPath());
System.out.println(ffile.length());
}

inp.close();
}
catch(IOException e)
{
System.out.println(e.toString());
}


}
}

運行結果:(區分list()與listFile() ,此結果為list())

技術分享

指定一個文件夾自動計算出其總容量 並且進行目錄下文件的添加 與指定文件的訪問