tenho esse codigo para enviar arquivo no email juntamente com a mensagem
BodyPart messageBodyPart = new MimeBodyPart();
messageBodyPart.setText(message);
Multipart multipart = new MimeMultipart();
multipart.addBodyPart(messageBodyPart);
// arquivo="C:\\teste\\arquivo.txt";
messageBodyPart = new MimeBodyPart();
String filename = arquivo;//"C:\\teste\\imagem.gif"; no lugar do arquivo colocando o caminho funciona
DataSource source = new FileDataSource(filename);
messageBodyPart.setDataHandler(new DataHandler(source));
messageBodyPart.setFileName(filename);
multipart.addBodyPart(messageBodyPart);
msg.setContent(multipart);
e esse metedo para ecolher o arquivo
JFileChooser jf = new JFileChooser();
jf.setFileSelectionMode(JFileChooser.FILES_ONLY);
if (jf.showOpenDialog(this) == JFileChooser.APPROVE_OPTION) {
arquivo = jf.getSelectedFile().getAbsolutePath() ;
System.out.print(arquivo);
porem o
String filename = arquivo;//"C:\\teste\\imagem.gif";
é uma string e eu nao consigo pegar o caminho dela para passar para o filename alguem ajuda ai
arquivo = jf.getSelectedFile().getAbsolutePath() ; essa linha me retorna C:\teste.imagem.gif o que resulta erro porque tem que ser assim C:\\teste\\imagem.gif";
:?:
any problem!?
Minha bolinha de cristal quebrou semana passada, então não tenho como adivinhar as coisas. :lol: :lol:
Coloca sua dúvida ai, para poder te ajudar.
Aproveita e separa o código do seu texto. Fica muito dificil de ler do jeito que vc postou.
JFileChooser jf = new JFileChooser();
jf.setFileSelectionMode(JFileChooser.FILES_ONLY);
if (jf.showOpenDialog(this) == JFileChooser.APPROVE_OPTION) {
arquivo = jf.getSelectedFile().getAbsolutePath() ;
System.out.print(arquivo);
me retorna c:\teste\imagem.gif o caminho do arquivo
mas eu passando a variavel arquivo para
Multipart multipart = new MimeMultipart();
multipart.addBodyPart(messageBodyPart);
messageBodyPart = new MimeBodyPart();
String filename = arquivo;
DataSource source = new FileDataSource(filename); //aqui a variavel arquivo
messageBodyPart.setDataHandler(new DataHandler(source));
da erro porque a variavel arquivo possui c:\teste\imagem.gif
quando eu faço assim arquivo = "C:\\teste\\imagem.gif"; ai funciona perfeitamente com 2 barras ao invez de 1 unica entendeu
Fabio,
- Não é para cercar todo seu post com as tags CODE, mas apenas o código.
- Se você quer um método que duplique os “”, está aqui:
public static String duplicaContrabarras (String str) {
return str.replace ("\\", "\\\\");
}
mas acredito que não resolva seu problema.