¿Cómo encontrar cuánto espacio en disco queda con Java?¿Cómo encontrar cuánto espacio en disco queda con Java?
Respuesta
Basta con mirar la clase de archivo documentation. Esta es una de las nuevas funciones en 1.6.
Estos nuevos métodos también incluyen:
public long getTotalSpace()
public long getFreeSpace()
public long getUsableSpace()
Si usted todavía está utilizando 1.5, puede utilizar la biblioteca y su Apache Commons IOFileSystem class
Si usted es un programador de Java, es posible que ya se han hecho esta sencilla pregunta stupide: “cómo encontrar el espacio de disco libre permanecen en el sistema?”. El problema es que la respuesta es depende del sistema. En realidad, es la implementación que depende del sistema . Y hasta hace muy poco, no existe una solución única para responder esta pregunta, aunque la necesidad ha ha registrado en la base de datos de errores de Sun desde junio de 1997. Ahora es posible obtener el espacio libre en disco en Java 6 con una método en el archivo de clase, que devuelve el número de bytes sin asignar en la partición nombrada por el nombre de ruta de acceso abstracto . Pero puede ser interesado en el espacio en disco utilizable (el que se puede escribir). Es incluso posible obtener el espacio total en el disco de una partición con el método getTotalSpace().
Uso CommonsIO y FilesystemUtils:
por ejemplo
FileSystemUtils.freeSpaceKb("/");
o integrado en el JDK:
http://java.sun.com/javase/6/docs/api/java/io/File.html#getFreeSpace()
new File("/").getFreeSpace();
¿Hay alguna otra función incorporada que sirva para el propósito sin la necesidad de crear un nuevo archivo? – user892871
No crea un nuevo archivo en el disco, solo un objeto File, si eso es lo que le preocupa –
'FileSystemUtils' solo ejecuta el comando" df "(o usa DIR en Windows). bastante terrible. –
Java 1.7 tiene una API ligeramente diferente, el espacio libre se puede consultar a través de la clase FileStore a través de los métodos getTotalSpace(), getUnallocatedSpace() y getUsableSpace() .
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());
}
}
La ventaja de esta API es que se obtienen excepciones significativas cuando se produce un error al consultar el espacio en disco.
En Linux Debian, la llamada FileSystems.getDefault(). GetRootDirectories() solo devuelve el directorio "/". – pako
al verificar el espacio de disco con java tiene el siguiente método en java.io clase File
- getTotalSpace()
- GetFreeSpace()
que sin duda le ayudará a obtener la información requerida. Por ejemplo, puede consultar http://javatutorialhq.com/java/example-source-code/io/file/check-disk-space-java/ que proporciona un ejemplo concreto al usar estos métodos.
¡Bienvenido a Stack Overflow! Tenga en cuenta que los enlaces desnudos a su propio sitio web/producto no son alentados aquí por dos razones; En primer lugar, una respuesta debe publicarse como una respuesta independiente, no como un simple enlace a un sitio externo. En segundo lugar, la autopromoción tiende a ser mal vista aquí, y a menudo se señala como correo no deseado (especialmente si no hay información que indique que está enlazando a su propio sitio/producto). –
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());
}
}
Prueba este código para obtener el espacio de disco
Este código es para memoria, no espacio en disco. –
- 1. ¿Qué es el comando Unix para ver cuánto espacio en disco hay y cuánto queda?
- 2. ¿Cómo se puede encontrar la cantidad de espacio en disco que queda en Cocoa?
- 3. ¿Cómo puedo saber cuánto espacio usa TFS?
- 4. Espacio en disco anunciado frente a espacio en disco real
- 5. cómo encontrar el uso de espacio de disco por usuario?
- 6. ¿Cómo averiguar el espacio libre en disco para una ruta determinada en un shell de Linux?
- 7. No queda espacio en Android Emulador
- 8. ¿Cómo se puede determinar cuánto espacio en disco está ocupando una determinada tabla MySQL?
- 9. ¿Cuánto espacio necesito para Git vs SVN?
- 10. Mahout se queda sin espacio en el montón
- 11. libv4l2: error al encenderse: no queda espacio en el dispositivo
- 12. ¿Cómo se sabe cuánto espacio asignar con malloc()?
- 13. ¿Cuánto espacio de disco se necesita para almacenar un valor NULL utilizando postgresql DB?
- 14. ¿Cómo calcular el espacio libre en el disco?
- 15. Obtenga espacio de disco disponible en ruby
- 16. consulta SQL suficiente espacio en disco
- 17. ¿Cómo obtener el espacio en disco en un servidor?
- 18. Espacio libre en disco en una unidad de red en Delphi
- 19. Hudson falla con el error "No queda espacio en el dispositivo" aunque hay suficiente espacio en el sistema
- 20. ¿Cómo obtener espacio de disco total disponible en sistemas Posix?
- 21. ¿Cómo determinar cuánto espacio libre hay en una unidad en Qt?
- 22. ¿Puede verificar el espacio disponible en el disco duro con Adobe Air?
- 23. MySQL: ¿Cuánto espacio usa un campo NULL?
- 24. ¿Cómo saber cuánto tiempo cuesta el código "sincronizado" en Java?
- 25. LaTeX: Mostrar bloque solo si queda espacio suficiente
- 26. ¿Cómo puedo saber cuánto espacio iCloud usa mi aplicación?
- 27. Base de datos que consume menos espacio en disco
- 28. Buscar espacio en disco libre en python en OS/X
- 29. ¿Cómo se pueden concatenar dos archivos enormes con muy poco espacio libre en el disco?
- 30. ¿Cuánto espacio ocupa una vista en Microsoft SQL Server?
Nota muy importante que getUsableSpace no es igual a GetFreeSpace. En los sistemas de archivos Linux, por ejemplo, las particiones suelen tener una cantidad de bloques reservados. Estos se incluyen en el valor devuelto por getFreeSpace() pero no en el valor de getUsableSpace(). Entonces, si está interesado en cuánto espacio tiene para escribir archivos, use getUsableSpace - NOT getFreeSpace(). – Mikkel
"Estás usando", no "tu uso", por el amor de Dios. Su clase de sistema. – biggvsdiccvs