Tuks
Tuks

Reputation: 155

android mysql display date/time in textview

i am trying to display current date/time in a textview, i have managed to display the date but do not know how to display the time, the format of the date/time must be '2015-12-10 01:52:23' as it will be stored in a database field TIMESTAMP. Heres what i have as of yet (Prints date '2015-12-10' only)

        displayDate = (TextView) findViewById(R.id.DATE);

    final Calendar cal = Calendar.getInstance();
    yy = cal.get(Calendar.YEAR);
    mm = cal.get(Calendar.MONTH);
    dd = cal.get(Calendar.DAY_OF_MONTH);

    // set current date into textview
    displayDate.setText(new StringBuilder()
            // Month is 0 based, just add 1
            .append(yy).append(" ").append("-").append(mm + 1).append("-")
            .append(dd));

It is then passed onto this: final String datetime = displayDate.getText().toString().trim();

which is added into the database:

            @Override
        protected String doInBackground(Void... v) {
            HashMap<String,String> params = new HashMap<>();
            params.put(Config.KEY_EMP_ID, TextUserID);
            params.put(Config.KEY_LAT,lat);
            params.put(Config.KEY_LON,lon);

Config is a java file which has the keys and JSON tags to query the database using php:

//Keys that will be used to send the request to php scripts
public static final String KEY_EMP_ID = "UserID";
public static final String KEY_LAT = "Latitude";
public static final String KEY_LON = "Longitude";
public static final String KEY_TIMEINSERTED = "TimeInserted";

Upvotes: 0

Views: 712

Answers (2)

KaeL
KaeL

Reputation: 3659

You can get the time from the Calendar as well:

hh12 = cal.get(Calendar.HOUR); -- 12 hour format
hh24 = cal.get(Calendar.HOUR_OF_DAY); -- 24 hour format
min = cal.get(Calendar.MINUTE);
sec = cal.get(Calendar.SECOND);

Then you can append it to your displayDate variable.

Learn more about Calendar class here.

Upvotes: 0

lodlock
lodlock

Reputation: 3788

I don't have the ability to test this at the moment, but you might want to consider using SimpleDateFormat.

Calendar calendar = Calendar.getInstance();
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
displayDate.setText(dateFormat.format(calendar.getTime()));

You should also consider using a locale as well.

Upvotes: 1

Related Questions