Escrevendo arquivo em um diretorio

Pessoal , tenho o seguinte código:
DataOutputStream dOS = new DataOutputStream(new FileOutputStream(usuario + “.pub”));
dOS.writeBytes(“Qualquer coisa”);
Ao invés de escrever na raiz do meu programa eu gostaria de escrever este arquivo em uma Sub-pasta. Ex: “Chaves/Public/usuario.pub” mas não consigo especificar o caminho para onde o arquivo de ir. Como faço isso?

vc tem que ter me mente que em java um arquivo/diretorio é representado pelo seu caminho completo desde a raiz, ou seja em java não existe o arquivo “usuario.pub” e sim “c:\usuario.pub” ou “c:\chaves\public\usuario.pub”, etc. Dessa forma se vc deseja escrever no arquivo “c:\chaves\public\usuario.pub” vc tem que criar um FileOutputStream que para o arquivo que vc deseja.

assim:

[code]

String arquivo = "c:\chaves\public\usuario.pub";
DataOutputStream dos = new DataOutputStream(new FileOutputStream(arquivo));

[/code][/b]