I am looking for a list of platform-specific (JRE-specific) of IOException messages indicating disk is full or out of space.
So far I have:
There is not enough space on the disk
Not enough space
No space left on device
I wish Java would make an IOException subclass for this...
The wording is actually a system message, not one from the JRE. (POSIX compliant will return "Not enough space")
As such, your best bet is to get a list of system error messages for the OS' you are targeting.
Alternatively, when the exception is thrown, you could check to see if there is any space remaining on the disk.
From the apache commons IO:
FileSystemUtils.freeSpaceKb(String path);
will return free space on the drive/volume (or maybe even throw an IOException!)
As to why there is not a IOException
subclass, I suspect that the operating system file call does not give enough information in enough cases for Java to know what the error is without parsing the error message (a very fragile operation at best). This is probably true of a number of io calls.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With