I need to get the field AM/PM in date object. How can i get it?
This is my code.
String startTime =\"01:05 PM\";
SimpleDateFormat sdf = new SimpleDa
You could use a Calendar.
Calendar cal = Calendar.getInstance();
cal.setTime(st);
if (cal.get(Calendar.AM_PM) == Calendar.PM) {
...
}
Make sure you don't have a time zone mismatch when you do this.
Calendar is probably best, but you could use DateFormat, too:
String amPm = new SimpleDateFormat("aa").format(time);
The TimeZone caveat also applies here.
Calendar can also do
Calendar cal = Calendar.getInstance();
cal.setTime(st);
String meridiem = cal.getDisplayName(Calendar.AM_PM, Calendar.SHORT, Locale.getDefault())
meridiem
now equals "PM" based on your code.
Please try this
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd_HH_mm_ss_aa");
Calendar cal = Calendar.getInstance();
Log.d("Time", ""+dateFormat.format(cal.getTime()));
int day = Calendar.getInstance().get(Calendar.DAY_OF_WEEK);
System.out.println("time => " + namesOfDays[day-1]+"_"+dateFormat.format(cal.getTime()));
use this..
String getTime(String milliseconds) {
String time = "";
Calendar cal = Calendar.getInstance();
cal.setTimeInMillis(Long.parseLong(milliseconds));
time = cal.get(Calendar.HOUR) + " : " + cal.get(Calendar.MINUTE);
if(cal.get(Calendar.AM_PM)==0)
time=time+" AM";
else
time=time+" PM";
return time;
}