Estou começando com java, migrando do vb6, e feliz pois estou me dando bem, apesar das diferenças.
me surgiu uma duvida com o método replace, eu preciso substituir em uma string o caractere \ pelo \, ex:
String caminho = c:\pasta\texto.txt
String newcaminho = caminho.replace('
A intenção do código é que , eu vou fazer cópias com o FileChannel, e pelo que aprendi no java( me corrijam se estiver errado), pra o java entender \ na string tem que usar duas \ ou seja : \\, então, essa String caminho ela vem de um resultado de um JFileChooser, o usuário escolhe um arquivo, e o programa vai fazer a cópia desse arquivo. O resto do programa já está funcionando perfeitamente, a minha dificuldade é com essa parte de substituir essa barra.
Abraços,
," \");
A intenção do código é que , eu vou fazer cópias com o FileChannel, e pelo que aprendi no java( me corrijam se estiver errado), pra o java entender \ na string tem que usar duas \ ou seja : \, então, essa String caminho ela vem de um resultado de um JFileChooser, o usuário escolhe um arquivo, e o programa vai fazer a cópia desse arquivo. O resto do programa já está funcionando perfeitamente, a minha dificuldade é com essa parte de substituir essa barra.
A duplicação de “” deve ser feita apenas no código fonte, não em uma String que já contem os dados.
É que no código-fonte uma “” sozinha em uma constante String tem o propósito de mudar o significado do próximo (s) caracter (es).
Mas dentro de uma String pronta, que você leu (por exemplo, de um JFileChooser) o “” é um caracter como os outros.
Quando vc está esrevendo no código o caminho da aplicação, é verdade que vc precisa colocar as “\” e o java irá interpretar com apenas uma “”. Vc pode testar no println().
Mas quando a string vem de uma request do JFileChooser , vc não precisa se preocupar em fazer o replace que o java faz automaticamente o parse. Relaxa veio…
Testa esse código:
JFileChooser escolherPasta = new JFileChooser();
String str = "";
int valor = escolherPasta.showOpenDialog(new JFrame());
if (valor == JFileChooser.APPROVE_OPTION) {
str = escolherPasta.getSelectedFile().getPath();
}
System.out.println(str);