2010-12-13 15 views

答えて

7
SimpleDateFormat format = new SimpleDateFormat("HH:mm:ss"); 
String formatted = format.format(date); // date is a long in milliseconds 
+1

、日付ではありません時間です:S – NullPointerException

+0

も、それは、それは動作しません。私には不正な引数の例外が与えられます。なぜなら、私はtimepickerをformat.format()に渡さなければならないからです。あなたは日付を渡しています:S – NullPointerException

+0

ピッカーから時間をミリ秒単位で取得する方法を知っていると仮定し、フォーマッタを使用して文字列を取得します。コードスニペットで 'date'を' time'に置き換えることができます。何も変更されません。両方とも数ミリ秒になると予想されるからです。 –

12
TimePicker t = new TimePicker(this); 

String formattedTime = ""; 
int hour = t.getCurrentHour(); 
String sHour = "00"; 
if(hour < 10){ 
sHour = "0"+hour; 
} else { 
sHour = String.valueOf(hour); 
} 

int minute = t.getCurrentMinute(); 
String sMinute = "00"; 
if(minute < 10){ 
sMinute = "0"+minute; 
} else { 
sMinute = String.valueOf(minute); 
} 

formattedTime = sHour+":"+sMinute+":"+"00"; // Sorry you can't get seconds from a TimePicker 
7

TimePickerを理解される設定時間を取得するために利用可能な2つの方法を持っています。 getCurrentHourおよびgetCurrentMinute

これを文字列として出力するのはあまり難しくありません。ところで

String s; 
Format formatter; 
Calendar calendar = Calendar.getInstance(); 
// tp = TimePicker 
calendar.set(Calendar.HOUR_OF_DAY, tp.getCurrentHour()); 
calendar.set(Calendar.MINUTE, tp.setCurrentMinutes()); 
calendar.clear(Calendar.SECOND); //reset seconds to zero 

formatter = new SimpleDateFormat("HH:mm:ss"); 
s = formatter.format(calendar.getTime()); // 08:00:00 

、小文字hhはあなたに12時間時計を取得します。

+0

おそらく '00'と現在の秒ではないときにフォーマットを':ss'に設定しました。フォーマットを '' HH:mm:00 "'に変更することができます –

2

SimpleDateFormatを使用して日付と時刻の書式を設定するだけです。

Calendar cal=new Calendar(); 
SimpleDateFormat frmDate=SimpleDateFormat("dd-MM-yyyy"); 
String s=frmDate.format(cal.getTime()); 
SimpleDateFormat frmTime=SimpleDateFormat("HH:MM:SS"); 
String t=frmTime.formate(cal.getTime()); 

http://developer.android.com/reference/java/text/SimpleDateFormat.html http://developer.android.com/reference/java/text/DateFormat.html

関連する問題