Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to convert date format from Android inbox sms

I used this code:

String[] columnDate =   new String[] {"date"};
Cursor cursor1 = getContentResolver().query(Uri.parse("content://sms/inbox"),
    columnDate ,null, null, "date desc limit 1");
cursor1.moveToPosition(0);
String msgData1Date = cursor1.getString(0);

..and it works but gives date on this format "1352933381889"
How to convert to normal date/time format in String type?

like image 842
user1824542 Avatar asked Nov 15 '12 12:11

user1824542


2 Answers

Try this:

Date date = new Date(cursor1.getLong(0));
String formattedDate = new SimpleDateFormat("MM/dd/yyyy").format(date);
like image 102
Flávio Faria Avatar answered Oct 11 '22 12:10

Flávio Faria


It seems that you are receiving the date in miliseconds. To convert miliseconds into a Date object:

long milliSeconds = cursor1.getLong(0);
DateFormat formatter = new SimpleDateFormat("dd/MM/yyyy hh:mm:ss.SSS");
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(milliSeconds);
String finalDateString = formatter.format(calendar.getTime());
like image 27
Pedro Lopes Avatar answered Oct 11 '22 12:10

Pedro Lopes