[Dúvida] Como abrir arquivo de uma pasta utilizando o WORD

Tenho um método que cria um arquivo em uma pasta chamada “Saved Work”, e, após este arquivo ser salvo, para o usuário é exibida uma mensagem de abertura ou não do arquivo salvo. É um arquivo texto simples que tento abrir com o word, só que quando eu chamo o método pra abrir o WORD passando como parametro o local o arquivo, ele não o encontra.

Runtime.getRuntime().exec("cmd.exe /C start WINWORD.exe " + objPasta.getAbsolutePath() + "/" + objFileName);

Acho que é por causa das barras que são geradas através do método do getAbsolutePath(). Mas como arrumar isso?

SOLUÇÃO: Descobri que é por causa do nome da pasta, não pode conter o espaço entre o Saved e o Work. Tem como arrumar isso, de qualquer maneira?

Fala brow,

Cara, nao testei aqui, mas voce ja tentou usar aspas no arquivo?

Runtime.getRuntime().exec("cmd.exe /C start WINWORD.exe \"" + objPasta.getAbsolutePath() + "/" + objFileName + "\"");

Abraco!

Pelo q sei para acessar pasta q tem espaço entre seu nome é so utilizar aspoas

“nome_da_pasta”

Att.,

[quote=kenneth]Fala brow,

Cara, nao testei aqui, mas voce ja tentou usar aspas no arquivo?

Runtime.getRuntime().exec("cmd.exe /C start WINWORD.exe \"" + objPasta.getAbsolutePath() + "/" + objFileName + "\"");

Abraco![/quote]

Não funciona. Realmente o problema é no nome da pasta, não pode conter espaço. :confused:

Fala brow,

Estranho nao ter funcionado com aspas…
Posta o erro pra gente ver ai…

Voce tentou com aspas simples no lugar dos " que eu pus?

Abraco!

Também existe a opção da classe Desktop. Voce pede para o sistema operacional abrir o arquivo com o programa padrao para edição de acordo com a extenção, e é bem simples.

Desktop.getDesktop().edit(new File("arquivo.extensao"));

Essa classe também tem os métodos open que abre como se fosse o duplo clique, o browse que recebe uma URI que abre o browser na URL especificada e mail que abre o gerenciador de email padrao.