亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

文件計數(shù)器

系統(tǒng) 1816 0

為了熟悉文件的基本操作,寫了一個文件計數(shù)器 .. 界面有些簡陋..

?

?

?

1: 文件計數(shù)的具體實現(xiàn)

    import java.io.File;

import javax.swing.JOptionPane;

/**
 * 指定路徑下文件夾和文件的數(shù)目及大小.
 * @author d.s
 *z
 */
public class FileCount {

	/**
	 * 得到文件數(shù)目
	 * 
	 * @param path
	 *            :指定的路徑
	 * @return 文件個數(shù)
	 */
	public int fCount(String path) {
		int countF = 0;
		File file = new File(path);

		// 路徑存在時:
		if (file.exists()) {

			// 該路徑下是一個文件的時候
			if (file.isFile()) {
				System.out.println("文件路徑為:" + file.getAbsolutePath());
				countF++;
			}
			if (file.isDirectory()) {// 該路徑下是一個文件夾的時候

				// 依次訪問該文件夾下的所有文件和文件夾.
				File f[] = file.listFiles();
				for (int i = 0; i < f.length; i++) {
					// 遞歸調(diào)用fCount方法
					countF += fCount(f[i].getAbsolutePath());
				}
			}
		} else {
			JOptionPane.showMessageDialog(null, "統(tǒng)計文件數(shù)目的路徑錯誤!!!");
		}
		
		return countF;
	}

	/**
	 * 該路徑下的文件夾數(shù)目
	 * 
	 * @param path指定的路徑
	 * @return 文件夾數(shù)目
	 */
	public int Dircount(String path) {
		int countD = 0;
		File file = new File(path);

		// 如果路徑正確
		if (file.exists()) {

			// 是文件夾的時候
			if (file.isDirectory()) {
				System.out.println(file.getAbsolutePath());
				countD++;
				File f[] = file.listFiles();
				for (int i = 0; i < f.length; i++) {
					// 遞歸
					countD += Dircount(f[i].getAbsolutePath());
				}
			}
		} else {
			JOptionPane.showMessageDialog(null, "統(tǒng)計文件夾的路徑錯誤!!!");
		}
		
		return countD;

	}

	/**
	 * 得到指定路徑下所有文件的大小之和
	 * 
	 * @param path指定的路徑
	 * @return 指定路徑下所有文件的大小之和
	 */
	public long fileLength(String path) {
		long length = 0;
		File file = new File(path);

		// 如果路徑正確
		if (file.exists()) {
			//如果是文件
			if(file.isFile()){
				length += file.length();
			}
			
			//如果是文件夾
			if(file.isDirectory()){
				File f[] = file.listFiles();
				for(int i = 0; i< f.length;i++){
					length += fileLength(f[i].getAbsolutePath());
				}
			}
		}
		
		return length;
	}
}

  

?

?

2: 計數(shù)器的一個簡單界面

    import java.awt.FlowLayout;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField;

public class FileCountUI extends JFrame {
	public static void main(String args[]) {
		FileCountUI ui = new FileCountUI();
		ui.showUI();
	}

	public void showUI() {
		this.setTitle("FileCount");
		this.setSize(350, 150);
		JLabel jl = new JLabel("指定目錄:");
		JTextField jf = new JTextField(20);
		this.add(jl);
		this.add(jf);
		JButton but1 = new JButton("文件數(shù)目");
		JButton but2 = new JButton("文件夾數(shù)目");
		JButton but3 = new JButton("文件的總大小");
		
		//加按鈕
		this.add(but1);
		this.add(but2);
		this.add(but3);
		
		this.setLayout(new FlowLayout());//流體式布局
		this.setLocationRelativeTo(null);//居中顯示
		this.setResizable(false);//不可改變大小
		this.setDefaultCloseOperation(EXIT_ON_CLOSE);//關(guān)閉界面時退出程序
		this.setVisible(true);//顯示窗體

		// 添加監(jiān)聽器
		ActionListenerImpl l = new ActionListenerImpl(jf);
		but1.addActionListener(l);
		but2.addActionListener(l);
		but3.addActionListener(l);

	}

}

  

?

?

?

3:監(jiān)聽器

    import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JTextField;

public class ActionListenerImpl implements ActionListener{

	private JTextField jf = new JTextField();
	
	public ActionListenerImpl(JTextField jf){
		this.jf = jf;
	}
	
	public void actionPerformed(ActionEvent e) {
		
		JButton but= (JButton)e.getSource();//獲取事件源
		
		FileCount fc = new FileCount();
		if(but.getText() == "文件數(shù)目"){
			System.out.println("文件數(shù)目為:"+fc.fCount(jf.getText()));
		}
		if(but.getText() == "文件夾數(shù)目"){
			System.out.println("文件夾的數(shù)目為:"+fc.Dircount(jf.getText()));
		}
		if(but.getText() == "文件的總大小"){
			System.out.println(fc.fileLength(jf.getText()));
		}
		
	}
	

}

  

?

?

界面如下


文件計數(shù)器

文件計數(shù)器


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 国产午夜不卡在线观看视频666 | 国产成人精品精品欧美 | 色综合亚洲欧美在线 | 中文字幕在线观看一区 | 超高清欧美videos360 | 日日夜夜操美女 | 精品煌色视频网站在线观看 | 91精品国产色综合久久不卡蜜 | 国产欧美日韩亚洲精品区2345 | 七月婷婷精品视频在线观看 | 国产精品福利影院 | 久久精品.com | 一级日本特黄毛片视频 | 天天摸天天干天天操 | 激情网站视频 | 日韩高清毛片 | 欧美一级片网 | 色婷婷综合久久久久中文 | 鲁啊鲁啊鲁在线视频播放 | 国产区精品一区二区不卡中文 | 国产精品久久久久无毒 | 日韩午夜小视频 | 亚洲网站视频 | 日韩免费片 | 久久99热只有频精品6不卡 | 欧美一区二区三区精品影视 | 白云精品视频国产专区 | 色综合天天综合网国产成人网 | 国内精品久久久久久中文字幕 | 色播综合 | 国产情精品嫩草影院88av | 日韩一级大毛片欧美一级 | 国产成人咱精品视频免费网站 | 国产香蕉75在线播放 | 视频二区中文字幕 | 日本欧美一区二区三区在线观看 | 国产欧美大片 | 精品无人区乱码一区二区 | 久久久国产一区二区三区 | 久久精品国产2020观看福利色 | 亚洲成精品动漫久久精久 |