Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Conversion of String to DateTime : Android

I have a field (named as time, but type is TEXT) in my Sqlite Database. In current format of that column is YYYY:MM:DD_HH:MM (as 2011:11:01_11:30 ). Now I have to sort this column, so I think I have to do two things:

  1. Convert string value to date.
  2. Then sort with column.

Then how can I convert that column into DateTime? Or is there any other way to do this?

like image 617
Pankaj Kumar Avatar asked Dec 01 '22 07:12

Pankaj Kumar


1 Answers

To convert String into Date, In my case this works fine,

String startTime = "2011-09-05 15:00:23";
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 
Date date1 = dateFormat.parse(startTime);

EDIT:

For Date and Time in SQLite

1.2 Date and Time Datatype

SQLite does not have a storage class set aside for storing dates and/or times. Instead, the built-in Date And Time Functions of SQLite are capable of storing dates and times as TEXT, REAL, or INTEGER values:

* TEXT as ISO8601 strings ("YYYY-MM-DD HH:MM:SS.SSS").
* REAL as Julian day numbers, the number of days since noon in Greenwich on November 24, 4714 B.C. according to the proleptic Gregorian calendar.
* INTEGER as Unix Time, the number of seconds since 1970-01-01 00:00:00 UTC. 

Applications can chose to store dates and times in any of these formats and freely convert between formats using the built-in date and time functions.

So, just use as a INTEGER or TEXT and use ORDER BY clause for sorting.

like image 69
user370305 Avatar answered Dec 12 '22 05:12

user370305