2013-03-15 21 views
5

内のローカル文字列に私はによって取得されたミリ秒単位で指定された日付/時刻があります。フォーマット日付/時刻は、ミリ秒単位で、Androidの

Calendar.getInstance().getTimeInMillis(); 

を私が表す文字列にこれをフォーマットしたいと思いますデバイス上のローカルフォーマットの日付と時刻。たとえば:

SimpleDateFormat outputFormat = new SimpleDateFormat("MMM dd, yyyy h:mm a"); 

ローカルフォーマットを扱うAPIがあります:

US:  12/15/2013 10:30 pm 
Germany: 15.12.2013 22:30 

私は、次のような書式設定を指定する必要はありませんか?

答えて

0

は、私は、これはあなたが探しているものだと思い:あなたはlocaleをチェックし、それに応じてその値を渡す必要が

Locale locale = Locale.getDefault();  
Date today = new Date(); 
SimpleDateFormat.SimpleDateFormat.getDateTimeInstance(SimpleDateFormat.LONG, SimpleDateFormat.LONG, locale).format(today)); 

res/values-en/strings.xml 
res/values-fr/strings.xml 
+0

私の時間はミリ秒です。それは「今日」ではないかもしれません。それはいつでも可能性があります。日付の値はミリ秒単位で同じですか? – AndroidDev

+0

はい、 'new Date()'と同じことはミリ秒も使用します。 – dShringi

+0

これには時間は含まれません。それは日付を提供するだけです。 – AndroidDev

-2

コード

String myformat = android.provider.Settings.System.getString(getContentResolver(),  android.provider.Settings.System.DATE_FORMAT); 
    DateFormat dateFormat; 
    if (TextUtils.isEmpty(myformat)) { 
     dateFormat = android.text.format.DateFormat.getMediumDateFormat(getApplicationContext()); 
    } else { 
     dateFormat = new SimpleDateFormat(format); 
    } 

したがって、dateformatはデバイスの日付と一致します

0

はこれを参照してください:あなたは、それからちょうどたとえば、フォルダをロケールに必要な文字列を入れ

getResources().getString(R.string.format) 

を経由して、それを利用できるように文字列リソースでのフォーマット文字列を格納することができます。オプションとして

0

チェックDateFormat。特に

public static final DateFormat getDateInstance(int style, 
               Locale aLocale) 

ここにはexampleがあります。それが助けになるかどうか見てください。

関連する問題