Sample code for 30+ languages & platforms
Dart

Get the Email Received Date/Time

See more Email Object Examples

Get's the date/time from the topmost Received header. The date/time of when you received an email may be different than the date/time stored in the Date header field, which if truthful, is the date when the email was sent.

The Received header field will look something like this:

Received: from mail.example.com (mail.example.com [99.255.255.99])
 by inbound-smtp.us-west-2.amazonaws.com with SMTP id 72ma443vs1g0o6vqd8erojkpss35s0dt32h323o1
 for admin@chilkatsoft.com;
 Wed, 25 Jul 2018 08:04:23 +0000 (UTC)
The date/time is the final part delimited by a semicolon.

Chilkat Dart Downloads

Dart
import 'package:chilkat/chilkat.dart';

void main() {
  final email = CkEmail();

  try {
    email.loadEml('qa_data/eml/p.eml');
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
    return;
  }

  final sb = CkStringBuilder();
  sb.append(email.getHeaderField('Received'));

  // Replace semicolons with CRLF's
  final numReplaced = sb.replace(';', '\r\n');

  final st = CkStringTable();
  st.appendFromSb(sb);

  if (st.count == 0) {
    print('Should have at least one line..');
    return;
  }

  // The date/time string is the last line in the string table.
  sb.setString(st.stringAt(st.count - 1));
  sb.trim();

  print('Received date/time = ${sb.getAsString()}');
}