2014-11-12 4 views
0

В StackOverflow есть много вопросов, но у меня нет ответа. Я видел эти 3 вопроса:Как получить текущую дату и время в Android?

Get Value Of Day Month form Date Object in Android?
How to get month and day in android?
Get current time and date on Android

Из этих 3 вопросов, которые я узнал, что, чтобы получить дату и время, мы должны использовать календарь. Я посетил страницу документации, но это слишком сложно понять.

Теперь мой вопрос: я хочу получить текущий день i.e 12, текущий месяц i.e Ноябрь, текущий год i.e 2014 и час, минута, а не секунды и AM или PM.

Я знаю только до здесь:

Calendar c = Calendar.getInstance(); 

Теперь то, что я должен делать дальше?

+0

Возможный дубликат [Как могу ли я изменить дату с 24-часового формата на 12-часовой формат (am/pm) в ndroid] (http://stackoverflow.com/questions/9532463/how-can-i-change-date-from24-hours-format-to-12-hours-format-am-pm-in-android) –

ответ

6
Calendar calander = Calendar.getInstance(); 
    cDay = calander.get(Calendar.DAY_OF_MONTH); 
    cMonth = calander.get(Calendar.MONTH) + 1; 
    cYear = calander.get(Calendar.YEAR); 
    selectedMonth = "" + cMonth; 
    selectedYear = "" + cYear; 
    cHour = calander.get(Calendar.HOUR); 
    cMinute = calander.get(Calendar.MINUTE); 
    cSecond = calander.get(Calendar.SECOND); 
0
public class XYZ extends Activity { 

/** Called when the activity is first created. */ 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    //setContentView(R.layout.main); 

    Calendar c = Calendar.getInstance(); 
    System.out.println("Current time => "+c.getTime()); 

    SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 
    String formattedDate = df.format(c.getTime()); 
    // formattedDate have current date/time 
    Toast.makeText(this, formattedDate, Toast.LENGTH_SHORT).show(); 


    // Now we display formattedDate value in TextView 
    TextView txtView = new TextView(this); 
    txtView.setText("Current Date and Time : "+formattedDate); 
    txtView.setGravity(Gravity.CENTER); 
    txtView.setTextSize(20); 
    setContentView(txtView); 
    } 

} 


Calendar calander = Calendar.getInstance(); 
cDay = calander.get(Calendar.DAY_OF_MONTH); 
cMonth = calander.get(Calendar.MONTH) + 1; 
cYear = calander.get(Calendar.YEAR); 
selectedMonth = "" + cMonth; 
selectedYear = "" + cYear; 
cHour = calander.get(Calendar.HOUR); 
cMinute = calander.get(Calendar.MINUTE); 
cSecond = calander.get(Calendar.SECOND); 
+0

Я хочу дату и время по частям. Текущий день в int, название месяца в String, год в int, час и минуту в int и AM или PM в String. –

+0

Измените аргументы, предоставленные SimpleDateFormat в моем ответе выше, и чтобы получить целые числа, используйте Integer.parseInt (string), чтобы преобразовать те, которые вам нужны как целые числа. –

4

Используйте SimpleDateFormat, чтобы получить дату и время в нужном формате:

Calendar c = Calendar.getInstance(); 
SimpleDateFormat sdf = new SimpleDateFormat("dd,MMMM,YYYY hh,mm,a"); 
String strDate = sdf.format(c.getTime()); 
11

Вы можете настроить формат, который вы хотите с помощью

DateFormat df = new SimpleDateFormat("dd MM yyyy, HH:mm"); 
String date = df.format(Calendar.getInstance().getTime()); 
+1

Большое спасибо –

1
Calendar localCalendar = Calendar.getInstance(TimeZone.getDefault()); 
    Date currentTime = localCalendar.getTime(); 
    int currentDay = localCalendar.get(Calendar.DATE); 
    int currentMonth = localCalendar.get(Calendar.MONTH) + 1; 
    int currentYear = localCalendar.get(Calendar.YEAR); 
    int currentDayOfWeek = localCalendar.get(Calendar.DAY_OF_WEEK); 
    int currentDayOfMonth = localCalendar.get(Calendar.DAY_OF_MONTH); 
    int CurrentDayOfYear = localCalendar.get(Calendar.DAY_OF_YEAR); 

    System.out.println("Current Date and time details in local timezone"); 
    System.out.println("Current Date: " + currentTime); 
    System.out.println("Current Day: " + currentDay); 
    System.out.println("Current Month: " + currentMonth); 
    System.out.println("Current Year: " + currentYear); 
    System.out.println("Current Day of Week: " + currentDayOfWeek); 
    System.out.println("Current Day of Month: " + currentDayOfMonth); 
    System.out.println("Current Day of Year: " + CurrentDayOfYear); 
Смежные вопросы