Hay algunas llamadas a métodos en Java que se pueden utilizar para obtener información relacionada con el espacio sobre una unidad de disco. Estos métodos utilizados para obtener dicha información se declaran en la clase de archivo, que reside en el paquete java.io. Los detalles de estas llamadas a métodos junto con su uso se dan a continuación:
Nota: Estos códigos no se ejecutarán en ide en línea. Además, todos funcionarán en Java 1.6 y versiones superiores.
- Java.io.File.getFreeSpace() : Obtenga el espacio libre total disponible en una unidad
Sintaxis:public long getFreeSpace() Returns the size of the partition named by this abstract pathname. Returns: The size, in bytes, of the partition or 0L if this abstract pathname does not name a partition Throws: SecurityException - If a security manager has been installed and it denies RuntimePermission("getFileSystemAttributes") or its SecurityManager.checkRead(String) method denies read access to the file named by this abstract pathname
// Java program to get the amount of free space available on any drive
import
java.io.*;
public
class
Test
{
public
static
void
main(String[] args)
{
File file =
new
File(
"E:\\"
);
double
size = file.getFreeSpace() / (
1024.0
*
1024
*
1024
);
System.out.printf(
"%.3f GB\n"
, size);
}
}
Producción:
18.242 GB
- Java.io.File.getUsableSpace() : espacio utilizable total disponible con una unidad. Devuelve la cantidad de bytes disponibles para esta máquina virtual en la partición nombrada por este nombre de ruta abstracto. Cuando sea posible, este método verifica los permisos de escritura y otras restricciones del sistema operativo y, por lo tanto, generalmente proporcionará una estimación más precisa de la cantidad de datos nuevos que realmente se pueden escribir que getFreeSpace().
El número devuelto de bytes disponibles es una sugerencia, pero no una garantía, de que es posible usar la mayoría o cualquiera de estos bytes. Es muy probable que el número de bytes no asignados sea exacto inmediatamente después de esta llamada. Es probable que se vuelva inexacto por cualquier operación de E/S externa, incluidas las realizadas en el sistema fuera de esta máquina virtual. Este método no garantiza que las operaciones de escritura en este sistema de archivos se realicen correctamente.
Sintaxis:public long getUsableSpace() Returns: The number of available bytes on the partition or 0L if the abstract pathname does not name a partition. On systems where this information is not available, this method will be equivalent to a call to getFreeSpace(). Throws: SecurityException - If a security manager has been installed and it denies RuntimePermission("getFileSystemAttributes") or its SecurityManager.checkRead(String) method denies read access to the file named by this abstract pathname
import
java.io.*;
public
class
Test
{
public
static
void
main(String[] args)
{
double
size =
new
File(
"C:\\"
).getUsableSpace() / (
1024.0
*
1024
*
1024
);
System.out.printf(
"%.3f GB\n"
, size);
}
}
Producción:
62.857 GB
- Java.io.File.getTotalSpace() : Capacidad total de una unidad. El método devuelve el tamaño de la partición nombrada por este nombre de ruta abstracto.
Sintaxis:
public long getTotalSpace() Returns: Returns: The size, in bytes, of the partition or 0L if this abstract pathname does not name a partition Throws: SecurityException - If a security manager has been installed and it denies RuntimePermission("getFileSystemAttributes") or its SecurityManager.checkRead(String) method denies read access to the file named by this abstract pathname
import
java.io.*;
public
class
Test
{
public
static
void
main(String[] args)
{
double
size =
new
File(
"C:\\"
).getUsableSpace() / (
1024.0
*
1024
*
1024
);
System.out.printf(
"%.3f GB\n"
, size);
}
}
Producción:
62.857 GB
Referencia utilizada: Oracle
Este artículo es una contribución de Mayank Kumar . Si le gusta GeeksforGeeks y le gustaría contribuir, también puede escribir un artículo usando contribuya.geeksforgeeks.org o envíe su artículo por correo a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA