到目前为止,我已经能够查看其中一个帐户中的所有电子邮件并打印出邮件片段,但我希望能够打印出完整的邮件。
这是我到目前为止使用的代码。
public static void getEmails() {
try {
ListMessagesResponse response = service.users().messages().list("me").execute();
List<Message> messages = new ArrayList<Message>();
while (response.getMessages() != null) {
messages.addAll(response.getMessages());
if (response.getNextPageToken() != null) {
String pageToken = response.getNextPageToken();
response = service.users().messages().list("me").setPageToken(pageToken).execute();
} else {
break;
}
}
for (Message message : messages) {
System.out.println(message.getId());
Message test = service.users().messages().get("me", message.getId()).execute();
System.out.println(test.getSnippet());
}
} catch (IOException e) {
e.printStackTrace();
}
}
如何以纯文本格式打印邮件的完整内容? (不是原始格式或任何东西)。
答案 0 :(得分:0)
对于那些想知道答案是什么的人,你只需要添加这段代码。
Message test = service.users().messages().get("me", message.getId()).setFormat("full").execute();
System.out.println(StringUtils.newStringUtf8(Base64.decodeBase64(test.getPayload().getBody().getData())));
这将为您提供html代码,您可以在其中提取所需的内容。希望有所帮助!