通过Java发送电子邮件发送数组

时间:2016-01-22 14:54:43

标签: java arrays javamail

我想通过电子邮件发送一个数组。到目前为止,我已经能够使用以下代码以[Value1,Value2,Value3]格式成功发送它:

    public static void EmailInfo(String[] args) {
                String from = Username;
                String pass = Password;
                String[] to = { recep}; 
                String subject = "Subject Header";
                String body = Arrays.toString(Retrieve.CalcResults);


                sendFromGMail(from, pass, to, subject, body);
            }
//Some more code here

message.setSubject(subject);
                message.setText(body);
                Transport transport = session.getTransport("smtp");
                transport.connect(host, from, pass);
                transport.sendMessage(message, message.getAllRecipients());
                transport.close();

正如您所看到的,我必须将整个数组CalcResults放到一个新的String中,然后将其作为消息文本传递。当我body数组时,我在行message.setText(body[])中收到错误,说这个方法不适用于参数(String [])。

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

message.setText接受一个String。 您已尝试发送String []。对于Java来说,这是另一回事。

我建议创建一个接受String []并返回String的方法 或使用像Jackson这样的东西将String []转换为JSON字符串。