import?java.io.File;
創(chuàng)新互聯(lián)是一家專(zhuān)業(yè)提供東麗企業(yè)網(wǎng)站建設(shè),專(zhuān)注與成都做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)、成都h5網(wǎng)站建設(shè)、小程序制作等業(yè)務(wù)。10年已為東麗眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專(zhuān)業(yè)網(wǎng)站制作公司優(yōu)惠進(jìn)行中。
import?java.text.NumberFormat;
public?class?Test?{
public?static?void?main(String[]?args){
File?f?=?new?File("F://1.txt");
NumberFormat?nt?=?NumberFormat.getPercentInstance();
//?精度
nt.setMinimumFractionDigits(2);
System.out.println(nt.format(memoryPercentage(f)));
}
public?static?double?memoryPercentage(File?f){
return?((double)f.length())/f.getTotalSpace();
}
}
1、先來(lái)先服務(wù)算法(FCFS)First Come First Service
這是一種比較簡(jiǎn)單的磁盤(pán)調(diào)度算法。它根據(jù)進(jìn)程請(qǐng)求訪(fǎng)問(wèn)磁盤(pán)的先后次序進(jìn)行調(diào)度。此算法的優(yōu)點(diǎn)是公平、簡(jiǎn)單,且每個(gè)進(jìn)程的請(qǐng)求都能依次得到處理,不會(huì)出現(xiàn)某一進(jìn)程的請(qǐng)求長(zhǎng)期得不到滿(mǎn)足的情況。此算法由于未對(duì)尋道進(jìn)行優(yōu)化,在對(duì)磁盤(pán)的訪(fǎng)問(wèn)請(qǐng)求比較多的情況下,此算法將降低設(shè)備服務(wù)的吞吐量,致使平均尋道時(shí)間可能較長(zhǎng),但各進(jìn)程得到服務(wù)的響應(yīng)時(shí)間的變化幅度較小。
先來(lái)先服務(wù) (125)86.147.91.177.94.150.102.175.130
[java] view plain copy print?
import?java.io.File;
import?java.io.FileFilter;
import?java.util.HashMap;
import?java.util.Map;
public?class?T1?{
/**存放文件后綴?對(duì)應(yīng)的大小*/
private?static?final?MapString,?Long?sizeMap?=?new?HashMapString,?Long();
/**存放文件后綴?對(duì)應(yīng)的個(gè)數(shù)*/
private?static?final?MapString,?Integer?countMap?=?new?HashMapString,?Integer();
public?static?void?main(String[]?args)?{
String?path?=?"F:";
filter(path);
for(String?key?:sizeMap.keySet())?{
System.out.println("后綴:"?+?key?+?"\t字節(jié):"?+?(sizeMap.get(key)==null?0:sizeMap.get(key))?+?"\t個(gè)數(shù)為"?+?(countMap.get(key)==null?0:countMap.get(key)));
}
}
public?static?void?filter(String?path){
File?file?=?new?File(path);
file.listFiles(new?FileFilter()?{
@Override
public?boolean?accept(File?f)?{
if(f.isDirectory())?{
filter(f.getPath());
return?false;
}
String?fileName?=?f.getName();
if(fileName.indexOf(".")?==?-1)?{
return?false;
}
String?suffix?=fileName.split("\\.")[1];//獲得文件后綴
//把文件后綴相同的字節(jié)數(shù)相加
Long?size?=?(sizeMap.get(suffix)==null?0:sizeMap.get(suffix))?+?f.length();
sizeMap.put(suffix,?size);
//把文件后綴相同的個(gè)數(shù)相加
Integer?count?=?(countMap.get(suffix)==null?0:countMap.get(suffix))?+?1;????????????
countMap.put(suffix,?count);
return?false;
}
});
}
}
運(yùn)行結(jié)果太長(zhǎng)了,我隨便截取點(diǎn)吧:
后綴:1-1?? ?字節(jié):1820?? ?個(gè)數(shù)為2
后綴:dll_2016-05-23_000?? ?字節(jié):345?? ?個(gè)數(shù)為1
后綴:dat?? ?字節(jié):20253796?? ?個(gè)數(shù)為28
后綴:1-2?? ?字節(jié):1302?? ?個(gè)數(shù)為2
后綴:md?? ?字節(jié):53548?? ?個(gè)數(shù)為4
后綴:MF?? ?字節(jié):1105?? ?個(gè)數(shù)為10
后綴:html?? ?字節(jié):745985?? ?個(gè)數(shù)為75
后綴:lrc?? ?字節(jié):6872?? ?個(gè)數(shù)為6
后綴:9-2?? ?字節(jié):1478?? ?個(gè)數(shù)為2
后綴:dll_2016-03-31_000?? ?字節(jié):55?? ?個(gè)數(shù)為1
后綴:9-3?? ?字節(jié):1436?? ?個(gè)數(shù)為2
后綴:all?? ?字節(jié):3003366?? ?個(gè)數(shù)為4
后綴:66b?? ?字節(jié):6786365?? ?個(gè)數(shù)為1
后綴:withoutimage?? ?字節(jié):383536?? ?個(gè)數(shù)為4
后綴:eclipse?? ?字節(jié):27666?? ?個(gè)數(shù)為104
后綴:woff?? ?字節(jié):437588?? ?個(gè)數(shù)為20
后綴:spr?? ?字節(jié):15084930?? ?個(gè)數(shù)為311
后綴:mdl?? ?字節(jié):79521996?? ?個(gè)數(shù)為487
后綴:m3d?? ?字節(jié):199680?? ?個(gè)數(shù)為3
后綴:JPG?? ?字節(jié):261216?? ?個(gè)數(shù)為113
后綴:fgd?? ?字節(jié):37819?? ?個(gè)數(shù)為1
后綴:79d?? ?字節(jié):23795338?? ?個(gè)數(shù)為3
后綴:79e?? ?字節(jié):8001129?? ?個(gè)數(shù)為1
后綴:gif?? ?字節(jié):1453085?? ?個(gè)數(shù)為597
后綴:dll_2016-04-26_000?? ?字節(jié):115?? ?個(gè)數(shù)為1
后綴:70LeagueV?? ?字節(jié):549361?? ?個(gè)數(shù)為1
后綴:lst?? ?字節(jié):47492?? ?個(gè)數(shù)為13
后綴:26q_v1?? ?字節(jié):7284946?? ?個(gè)數(shù)為1
后綴:sql?? ?字節(jié):87909?? ?個(gè)數(shù)為6
后綴:11-4?? ?字節(jié):1230?? ?個(gè)數(shù)為2
后綴:11-3?? ?字節(jié):1804?? ?個(gè)數(shù)為2
后綴:timer?? ?字節(jié):10452?? ?個(gè)數(shù)為3
后綴:html5only?? ?字節(jié):467448?? ?個(gè)數(shù)為4
后綴:dll_2016-05-17_000?? ?字節(jié):115?? ?個(gè)數(shù)為1
后綴:11-2?? ?字節(jié):1770?? ?個(gè)數(shù)為2
后綴:11-1?? ?字節(jié):2032?? ?個(gè)數(shù)為2
后綴:flexslider-min?? ?字節(jié):65025?? ?個(gè)數(shù)為3
后綴:dll_2016-07-01_000?? ?字節(jié):13427?? ?個(gè)數(shù)為2
后綴:greenxf?? ?字節(jié):97562?? ?個(gè)數(shù)為1
特地敲了代碼 要采納啊,我這測(cè)試的是F盤(pán) 是可以的, 你有什么疑問(wèn)? 可追問(wèn)我
import java.io.File;
import java.text.DecimalFormat;
/**
* User:
* Date: 2016/12/07
* Time: 14:29
*/
public class MainTest {
public static void main(String[] args) {
File[] roots = File.listRoots();
double constm = 1024 * 1024 * 1024 ;
double total = 0d;
for (File file : roots) {
System.out.println(file.getPath());
System.out.println("剩余空間 = " + doubleFormat(file.getFreeSpace()/constm)+" G");
System.out.println("已使用空間 = " + doubleFormat(file.getUsableSpace()/constm)+" G");
System.out.println(file.getPath()+"盤(pán)總大小 = " + doubleFormat(file.getTotalSpace()/constm)+" G");
System.out.println();
total += file.getTotalSpace();
}
System.out.println("你的硬盤(pán)總大小 = "+doubleFormat(total/constm));
}
private static String doubleFormat(double d){
DecimalFormat df = new DecimalFormat("0.##");
return df.format(d);
}
}
試一下。。。
java中可以使用file對(duì)象,獲取當(dāng)前電腦硬盤(pán)基本信息,示例如下:
import?java.io.File;
public?class?DiskSpaceDetail?{
public?static?void?main(String[]?args)?{
File?diskPartition?=?new?File("C:");
long?totalCapacity?=?diskPartition.getTotalSpace();?
long?freePartitionSpace?=?diskPartition.getFreeSpace();?
long?usablePatitionSpace?=?diskPartition.getUsableSpace();?
System.out.println("****?Sizes?in?Mega?Bytes?****\n");
System.out.println("Total?C?partition?size?:?"?+?totalCapacity?/?(1024*1024)?+?"?MB");
System.out.println("Usable?Space?:?"?+?usablePatitionSpace?/?(1024?*1024)?+?"?MB");
System.out.println("Free?Space?:?"?+?freePartitionSpace?/?(1024?*1024)?+?"?MB");
System.out.println("\n****?Sizes?in?Giga?Bytes?****\n");
System.out.println("Total?C?partition?size?:?"?+?totalCapacity?/?(1024*1024*1024)?+?"?GB");
System.out.println("Usable?Space?:?"?+?usablePatitionSpace?/?(1024?*1024*1024)?+?"?GB");
System.out.println("Free?Space?:?"?+?freePartitionSpace?/?(1024?*1024*1024)?+?"?GB");
}
}
import?java.util.ArrayList;
import?java.util.Iterator;
import?java.util.List;
import?java.util.Map;
import?java.util.TreeMap;
import?java.util.Map.Entry;
public?class?Test?{
public?static?void?main(String[]?args)?{
HardDiskAction?action?=?new?HardDiskAction();
HardDisk?hardDisk;
for?(int?i?=?0;?i??5;?i++)?{
hardDisk?=?new?HardDisk();
hardDisk.setName("name"?+?i);
hardDisk.setPrice(100?+?i);
hardDisk.setCapacity(200?+?i);
hardDisk.setDetail("this?is?name"?+?i?+?"?detail");
action.add(hardDisk);
}
for?(int?i?=?5;?i??10;?i++)?{
hardDisk?=?new?HardDisk();
hardDisk.setName("name"?+?i);
hardDisk.setPrice(100?-?i);
hardDisk.setCapacity(200?-?i);
hardDisk.setDetail("this?is?name"?+?i?+?"?detail");
action.add(hardDisk);
}
action.printAllDiskDetail();
}
}
class?HardDiskAction?{
private?MapString,?HardDisk?hardDisks?=?new?TreeMapString,?HardDisk();
public?void?add(HardDisk?HardDisk)?{
hardDisks.put(HardDisk.getName(),?HardDisk);
}
public?void?remove(String?name)?{
hardDisks.remove(name);
}
public?void?printAllDiskDetail()?{
ListHardDisk?list?=?new?ArrayListHardDisk();
Iterator?it?=?hardDisks.entrySet().iterator();
while?(it.hasNext())?{
list.add((HardDisk)?((Entry)?it.next()).getValue());
}
int?length?=?list.size();
HardDisk?hardDisk;
for?(int?i?=?0;?i??length;?i++)?{
for?(int?j?=?i?+?1;?j??length;?j++)?{
double?previousPrice?=?list.get(i).getPrice();
double?nextPrice?=?list.get(j).getPrice();
int?previousSize?=?list.get(i).getCapacity();
int?nextSize?=?list.get(j).getCapacity();
if?(previousPrice??nextPrice
||?(previousPrice?==?nextPrice??previousSize??nextSize))?{//?判斷價(jià)格和大小來(lái)排序
hardDisk?=?list.get(i);
list.set(i,?list.get(j));
list.set(j,?hardDisk);
}
}
}
for?(HardDisk?disk?:?list)?{
System.out.println("name:"?+?disk.getName()?+?",price:"
+?disk.getPrice()?+?",Capacity:"?+?disk.getCapacity()
+?"G,detail:"?+?disk.getDetail());
}
}
}
class?HardDisk?{
private?String?name;
private?double?price;
private?int?capacity;
private?String?detail;
public?String?getName()?{
return?name;
}
public?void?setName(String?name)?{
this.name?=?name;
}
public?double?getPrice()?{
return?price;
}
public?void?setPrice(double?price)?{
this.price?=?price;
}
public?int?getCapacity()?{
return?capacity;
}
public?void?setCapacity(int?capacity)?{
this.capacity?=?capacity;
}
public?String?getDetail()?{
return?detail;
}
public?void?setDetail(String?detail)?{
this.detail?=?detail;
}
}
分享題目:磁盤(pán)容量排序java代碼,磁盤(pán)容量排序java代碼是多少
鏈接URL:http://chinadenli.net/article6/heeeig.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)網(wǎng)站建設(shè)、移動(dòng)網(wǎng)站建設(shè)、微信公眾號(hào)、營(yíng)銷(xiāo)型網(wǎng)站建設(shè)、虛擬主機(jī)、網(wǎng)站維護(hù)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)