Wie finden Sie, wie viel Speicherplatz übrig ist mit Java?
Frage
So finden Sie, wie viel Speicherplatz wird Java links mit?
Lösung
Gerade in der File-Klasse Dokumentation . Dies ist eines der neuen Features in 1.6.
Diese neuen Methoden schließen auch ein:
-
public long getTotalSpace()
-
public long getFreeSpace()
-
public long getUsableSpace()
Wenn Sie immer noch mit 1,5, dann können Sie die Apache Commons IO Bibliothek verwenden und seine Filesystem-Klasse
Andere Tipps
Java 1.7 eine etwas andere API, können freien Speicherplatz durch das getTotalSpace () , getUnallocatedSpace ( ) und getUsableSpace () Methoden.
NumberFormat nf = NumberFormat.getNumberInstance();
for (Path root : FileSystems.getDefault().getRootDirectories()) {
System.out.print(root + ": ");
try {
FileStore store = Files.getFileStore(root);
System.out.println("available=" + nf.format(store.getUsableSpace())
+ ", total=" + nf.format(store.getTotalSpace()));
} catch (IOException e) {
System.out.println("error querying space: " + e.toString());
}
}
Der Vorteil dieser API ist, dass man sinnvolle Ausnahmen zurück erhalten, wenn Speicherplatz Abfrage fehlschlägt.
Mit CommonsIO und FilesystemUtils:
z.
FileSystemUtils.freeSpaceKb("/");
oder in das JDK gebaut:
http: // java .sun.com / JavaSE / 6 / docs / api / java / io / file.html # GetFreeSpace ()
new File("/").getFreeSpace();
Wenn Sie ein Java-Programmierer sind, können Sie bereits gebeten worden, diese einfache, stupide Frage: „Wie das finden freier Speicherplatz auf meinem System verlassen?“. Das Problem ist, dass die Antwort System abhängig. Eigentlich ist es die Implementierung, das System ist abhängig. Und bis vor kurzem es gab keine eindeutige Lösung zu beantworten diese Frage, obwohl die Notwendigkeit hat wurde in Sun Bug-Datenbank protokolliert seit Juni 1997. Nun ist es möglich, erhalten den freien Speicherplatz in Java 6 mit eine Methode in der Klasse-Datei, die gibt die Anzahl der nicht zugeteilten Bytes in der durch die genannte Partition abstrakte Pfadnamen. Aber Sie könnten sein Interesse an der nutzbaren Speicherplatz (Die, die beschreibbar ist). Es ist sogar möglich, die gesamte Speicherplatz zu erhalten eine Trennwand mit dem Verfahren getTotalSpace ().
bei der Überprüfung der Speicherplatz mit Java Sie haben die folgende Methode in java.io File-Klasse
- getTotalSpace ()
- GetFreeSpace ()
, die auf jeden Fall bei der Beschaffung der erforderlichen Informationen helfen. Zum Beispiel können Sie beziehen sich auf http: // javatutorialhq.com/java/example-source-code/io/file/check-disk-space-java/ , die bei der Verwendung dieser Methoden ein konkretes Beispiel gibt.
public class MemoryStatus{
public static void main(String args[])throws Exception{
Runtime r=Runtime.getRuntime();
System.out.println("Total Memory: "+r.totalMemory());
System.out.println("Free Memory: "+r.freeMemory());
}
}
Versuchen Sie diesen Code Speicherplatz zu bekommen