Caminhos de arquivos servirem tanto em linux quanto em windows

olá pessoal,
criei um arquivo assim:

File logFile = new File("./modules/vnc/WinVNC.log");

bom, dessa forma, o caminho vai servir pra linux também?
na verdade quero saber a melhor maneira de fazer isso pra que sempre funcione em várias plataformas.
nao intendo muita coisa nao. a classe URI poderia ajudar?
obrigado.

“/” é reconhecido tanto pelo Unix/Linux quanto pelo Windows, mas obviamente você deve saber que as coisas estão em locais diferentes nos dois sistemas.

vc pode usar caminho relativo ("/pasta/arquivo.txt" por ex.) ou pegar o nome de um resource acossiando a alguma classe e usá-lo como ponto de partida.

file = new File(“c:\temp”, “nomearquivo.txt”);

file = new File("c:\temp", "nomearquivo.txt"); 

a) “\t” nesse caso é um caracter TAB, você deveria usar “c:\temp”

b) O diretório c:\temp não existe em todos os sabores de Windows. Se quiser realmente criar um arquivo no diretório de arquivos temporários, use createTempFile.
A vantagem de usar essa API é que isso funciona até se seu programa rodar no Unix/Linux (onde ele irá usar o diretório /tmp, ou algum subdiretório de /tmp dependendo da sua versão de Unix ou Linux.

Souarte

Se você colocar \ ele não vai funcionar em linux.
Você teria que fazer do jeito que eu disse mesmo, não precisa ser necessáriamente no c:\temp poderia ser em outro diretório qualquer, e um arquivo de outra extensão com outro nome sei lá isso não faz diferença.

Mas muito interessante esta API para criar arquivos temporários eu não a conhecia.