Olá amigos… gostei do novo layout do GUJ. Então, estou usando java.io para trabalhar com diretórios, arquivos… etc. No entanto, precisaria saber se tem como eu pegar o caminho do workspace que o eclipse, ou usuario escolheu e armazenar em uma variavel. O metodo que estou usando, esta usando um caminho fixo.
No exemplo abaixo estou criando uma pasta e um arquivo dentro do caminho que passei.
public void gerarPacotesCliente() {
try { -- caminho fixo que eu passei
File arq = new File("C:/FDDK/Workspace/Extratores/src/" + cliente);
-- aki eu queria passar apenas o caminho que foi definido quando instalou o eclipse pela primeira vez
arq.mkdirs();
arq.listFiles();
File arquivo = new File("C:/FDDK/Workspace/Extratores/src/" + cliente + "/" + "BI.java");
if (!arquivo.exists())
arquivo.createNewFile();
writer = new PrintWriter(new FileWriter(arquivo));
escreverBI(null);
} catch (Exception ex) {
ex.printStackTrace();
}
}
Acredito não ter sido muito claro,contudo, espero por sugestões.
File f = new File("resources/arquivo.txt"); // root (workspace) / resources / arquivo.txt
File f = new File("/resources/arquivo.txt"); // %User.Home% / resources / arquivo.txt

Ola. Muito obriado pela resposta, agora o me diga o que significa aquele “resources”?
Só um exemplo de pasta… pode ser qualquer coisa.
[quote=MarceloS]
File f = new File("resources/arquivo.txt"); // root (workspace) / resources / arquivo.txt
File f = new File("/resources/arquivo.txt"); // %User.Home% / resources / arquivo.txt
[/quote]
aqui não rolou não…ele não acha o caminho da workspace sozinho… 
Se você colocar só assim :
File file = new File("Arquivo.txt");
Ele vai criar o arquivo dentro da pasta do seu projeto, no meu caso ficaria assim:
D:\workspace\Evandro\Arquivo.txt
Para mim colocar dentro da pasta onde fica a classe, não entendi se é isso que vc quer, foi o que entendi.
O endereco da minha pasta é: D:\workspace\Evandro\bin\exercicio eu teria que fazer assim:
File file = new File("bin/exercicio/Text.txt");
Se é isso que vc queria, espero ter ajudado!
Enadrov … só q quando eu dou o commando pra criar o arquivo, ele não consegue achar o caminho… eu tive que criar uma classe de “configuração” pra setar os valores…
infelizmente não rolou usar um “path” dinamico…
Talvez uma alternativa para pegar o caminho dinâmico seria:
String caminhoAtual = new File("").getAbsolutePath();
depois você pode concatenar com o nome do arquivo para ter o caminho completo
Um pequeno exemplo:
String caminhoAtual = new File("").getAbsolutePath();
String novoArquivo = caminhoAtual + File.separator + "arquivo.txt";
new File(novoArquivo).createNewFile();
[quote=carolino]Talvez uma alternativa para pegar o caminho dinâmico seria:
String caminhoAtual = new File("").getAbsolutePath();
depois você pode concatenar com o nome do arquivo para ter o caminho completo
Um pequeno exemplo:
String caminhoAtual = new File("").getAbsolutePath();
String novoArquivo = caminhoAtual + File.separator + "arquivo.txt";
new File(novoArquivo).createNewFile();
[/quote]
showwwwwwwwww finalmente alguma dica que funcionou do jeito que eu queria
obrigado carolino o/*
Não sei se é isso, mas sugiro que você olhe o que indico abaixo:
http://docs.oracle.com/javase/7/docs/api/
java.lang.System
Class System
getProperties() <-- com o parâmero: (user.dir) = User’s current working directory.
Abs.
[quote=joagostini]Não sei se é isso, mas sugiro que você olhe o que indico abaixo:
http://docs.oracle.com/javase/7/docs/api/
java.lang.System
Class System
getProperties() <-- com o parâmero: (user.dir) = User’s current working directory.
Abs.[/quote]
poxa isso msm
assim fica melhor… não fica com cara de “gambiarra” ahuahuahua 