Experimente executar o seguinte comando em um "Command Prompt", ou DOS (não sei como é o nome disso no Windows em português ibérico):
cmd /c vol d: > \ficheiro.txt
(onde d: é a letra do drive que contém o CD ou DVD).
No meu Windows em inglês o conteúdo do arquivo "\ficheiro.txt" é algo como
Volume in drive D is URIAH_HEEP
Volume Serial Number is CAFE-BABE
O que você deve fazer, então, é usar Runtime.exec para executar o comando acima, e ler o ficheiro criado pelo comando.
F
ffar
Obrigado pela resposta. É uma opção.
No entanto assim o programa não fica independente da plataforma (só vai funcionar em Windows/DOS). Ia ter de contornar o problema no codigo. Vou ponderar isto.
T
thingol
Como é que se lê o label de um CD ou DVD no Linux? Acho que é bem mais complicado. (Não dá para ler com “ls -l” ou outro comando padrão do Unix).
E se eu quizer mostrar na tela o conteudo das unidades, por exemplo listar as pastas ou arquivos do CD que tem no drive.
Alguém saberia como?
Consegui assim:
importjava.io.File;importjava.util.Vector;publicclassMain{publicstaticvoidmain(String[]args){Vectorvetor=newVector();Filedir=newFile("G:\\");File[]arqs=dir.listFiles();for(inti=0;i<arqs.length;i++){System.out.println(arqs[i]);vetor.add(arqs[i]);}//mostra o vetor completoSystem.out.println(vetor);//quebra o vetor em posicao e depois separa a unidade da faixafor(inti=0;i<vetor.size();i++){Stringtemp=vetor.get(i).toString();Stringfaixa=temp.substring(3,50);Stringunidade=temp.substring(0,3);System.out.println("Unidade: "+unidade+" -> Faixa: "+faixa);}}}