我正在尝试使用Java中的JavaMail API提取电子邮件。我想在特定日期之间获取邮件,但是问题是我无法获取当前日期的电子邮件,例如:如果我必须获取18/11/16至17/11/18之间的邮件,或者仅获取18/11/11,我无法提取这些电子邮件,即我无法提取最近的电子邮件。下面是我的代码。
SimpleDateFormat somePastDate = new SimpleDateFormat( "EE MMM dd HH:mm:ss z yyyy");
String dt="Thu Nov 15 01:53:10 IST 2018";
java.util.Date pastDate = somePastDate.parse(dt);
System.out.println("the past Date is "+pastDate);
SimpleDateFormat formatter = new SimpleDateFormat("EE MMM dd HH:mm:ss z yyyy",
Locale.ENGLISH);
String futureDate = new SimpleDateFormat("E MMM dd HH:mm:ss z yyyy", Locale.getDefault()).format(new Date());
java.util.Date somefutureDate=formatter.parse(futureDate);
System.out.println("the future date is "+somefutureDate);
SearchTerm olderThan=new ReceivedDateTerm(ComparisonTerm.LT,somefutureDate);
SearchTerm newerThann=new ReceivedDateTerm(ComparisonTerm.GT,pastDate);
SearchTerm andTerm=new AndTerm(olderThan,newerThann);
答案 0 :(得分:0)
请尝试使用
SimpleDateFormat format = new SimpleDateFormat();
format = new SimpleDateFormat("dd/MM/yyyy");
定义两个日期对象,并使用上面显示的这种格式示例。 比您已经在代码中完成的其余工作要多。
祝你好运 亚尼夫