私は以下のコードを書きました
Date d = new Date();
CharSequence s = DateFormat.format("MMMM d, yyyy ", d.getTime());
しかし、私はパラメータを求めている、私は文字列形式で現在の日付が欲しい、
好き
28-Dec-2011
TextView
を設定できるように
少し説明してください、あなたが何かが必要であると思うならば、私はアンドロイド開発に新しいです。
希望する形式で日付をフォーマットするために SimpleDateFormat
クラスを使用することができます。
あなたの例のためのアイデアを得たところでこのリンクをチェックしてください。
例えば:
String dateStr = "04/05/2010";
SimpleDateFormat curFormater = new SimpleDateFormat("dd/MM/yyyy");
Date dateObj = curFormater.parse(dateStr);
SimpleDateFormat postFormater = new SimpleDateFormat("MMMM dd, yyyy");
String newDateStr = postFormater.format(dateObj);
詳細な例は ここ です。この例を見てSimpleDateFormatクラスの概念を理解することをお勧めします。
Date c = Calendar.getInstance().getTime();
System.out.println("Current time => " + c);
SimpleDateFormat df = new SimpleDateFormat("dd-MMM-yyyy");
String formattedDate = df.format(c);
この単純な一行コードで現在の日付を取得するyyyy-MM-ddフォーマットあなたが望むフォーマットを使うことができます。
String date = new SimpleDateFormat("yyyy-MM-dd", Locale.getDefault()).format(new Date());
Javaをベースにしているので、これはAndroidとは関係ありません。
private String getDateTime() {
DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
Date date = new Date();
return dateFormat.format(date);
}
public String giveDate() {
Calendar cal = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat("EEE, MMM d, yyyy");
return sdf.format(cal.getTime());
}
これを試して、
SimpleDateFormat timeStampFormat = new SimpleDateFormat("yyyyMMddHHmmssSS");
Date myDate = new Date();
String filename = timeStampFormat.format(myDate);
魅力のように働き、ボーナスとしてStringに変換します。
SimpleDateFormat currentDate = new SimpleDateFormat("dd/MM/yyyy");
Date todayDate = new Date();
String thisDate = currentDate.format(todayDate);
CharSequence s = DateFormat.getDateInstance().format("MMMM d, yyyy ");
最初にインスタンスが必要です
String date = new SimpleDateFormat("yyyy-MM-dd").format(new Date());
// DateクラスをJava.utilとしてインポートする
以下のコードは時間と日付の両方を表示します
Calendar cal = Calendar.getInstance();
cal.getTime().toString();
SimpleDateFormat df = new SimpleDateFormat("dd-MMM-yyyy");
String date = df.format(Calendar.getInstance().getTime());
Calendar cal = Calendar.getInstance();
Calendar dt = Calendar.getInstance();
dt.clear();
dt.set(cal.get(Calendar.YEAR), cal.get(Calendar.MONTH),cal.get(Calendar.DATE));
return dt.getTime();
Pareshの解決策への簡単な微調整:
Date date = Calendar.getInstance().getTime();
SimpleDateFormat df = new SimpleDateFormat("dd-MMM-yyyy");
String formattedDate = df.format(date);
あなたが望むフォーマットで日付を得るために次のコードを使うことができます。
String date = String.valueOf(Android.text.format.DateFormat.format("dd-MM-yyyy", new Java.util.Date()));
Date c = Calendar.getInstance().getTime();
System.out.println("Current time => " + c);
SimpleDateFormat df = new SimpleDateFormat("dd-MMM-yyyy");
String formattedDate = df.format(c);
これは最良の答えです...
私は現代的な答えを提供しています。
現在の日付を取得するには:
LocalDate today = LocalDate.now(ZoneId.of("America/Hermosillo"));
これにより、LocalDate
オブジェクトが得られます。これは、プログラムで日付を保持するために使用するものです。 LocalDate
は、時刻のない日付です。
ユーザーに日付を表示する必要がある場合にのみ、ユーザーのロケールに適した文字列にフォーマットします。
DateTimeFormatter userFormatter
= DateTimeFormatter.ofLocalizedDate(FormatStyle.LONG);
System.out.println(today.format(userFormatter));
今日、このスニペットを米国英語ロケールで実行したときの出力は次のとおりです。
2019年7月13日
短くしたい場合は、FormatStyle.MEDIUM
またはFormatStyle.SHORT
を指定します。 DateTimeFormatter.ofLocalizedDate
はデフォルトのフォーマットロケールを使用するため、ポイントは、ロケールに応じて、そのロケールに適した出力を提供することです。
ユーザーが出力形式に対して非常に特別な要件を持っている場合は、形式パターン文字列を使用します。
DateTimeFormatter userFormatter = DateTimeFormatter.ofPattern(
"d-MMM-u", Locale.forLanguageTag("ar-AE"));
13-يول-2019
最新のJava日時APIであるJava.timeを使用および推奨しています。質問で使用されているDateFormat
、SimpleDateFormat
、Date
、およびCalendar
やその他の多くの回答は、設計が不十分で、古くなっています。また、Java.timeを使用する方がはるかに優れています。
はい、Java.timeは古いものと新しいAndroidデバイスでうまく動作します。少なくともJava 6が必要です。
org.threeten.bp
から日時クラスをインポートしてください。Java.time
が最初に記述されました。Java.time
からJava 6および7へのバックポート(ThreeTen for JSR-310)。これは私が使用したコードです:
Date date = new Date(); // to get the date
SimpleDateFormat df = new SimpleDateFormat("dd-MM-yyyy"); // getting date in this format
String formattedDate = df.format(date.getTime());
text.setText(formattedDate);
私はすでにこれを使っています:
Date What_Is_Today=Calendar.getInstance().getTime();
SimpleDateFormat Dateformat = new SimpleDateFormat("dd-MM-yyyy");
String Today=Dateformatf.format(What_Is_Today);
Toast.makeText(this,Today,Toast.LENGTH_LONG).show();
最初に時間を取得し、次にSimple Date Format(19-6-2018のように日付を取得するため)を宣言してからformatを使用して日付を文字列に変更します。
public static String getcurrentDateAndTime(){
Date c = Calendar.getInstance().getTime();
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy/MM/dd");
String formattedDate = simpleDateFormat.format(c);
return formattedDate;
}
// String currentdate= getcurrentDateAndTime();
現在のロケールで現在の日付を取得する最も簡単な方法(デバイスのロケール!):
String currentDate = DateFormat.getDateInstance().format(Calendar.getInstance().getTime());
日付を異なるスタイルで表示したい場合はgetDateInstance(int style)
を使用してください。
DateFormat.getDateInstance(DateFormat.FULL).format(Calendar.getInstance().getTime());
その他のスタイル:DateFormat.LONG
、DateFormat.DATE_FIELD
、DateFormat.DAY_OF_YEAR_FIELD
など CTRL+Space それらすべてを見るために)
あなたも時間が必要な場合:
String currentDateTime = DateFormat.getDateTimeInstance(DateFormat.DEFAULT,DateFormat.LONG).format(Calendar.getInstance().getTime());
このコードのリンクを使ってみてくださいこれはすべての日付と時間にわたってすべての場合のための絶対的な正解です。またはアプリのニーズと要件に応じて日付と時刻をカスタマイズします。
このリンクで試してください。 このリンクで試してください
public static String getDateTime() {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("MMMM dd, yyyy HH:mm:ss", Locale.getDefault());
Date date = new Date();
return simpleDateFormat.format(date);
}
私はCalendarViewを使ってカレンダーアプリを書きました。それは私のコードです:
CalendarView cal = (CalendarView) findViewById(R.id.calendar);
cal.setDate(new Date().getTime());
'calendar'フィールドは私のCalendarViewです。輸入:
import Android.widget.CalendarView;
import Java.util.Date;
現在の日付が間違いなく表示されています。
Calendar c = Calendar.getInstance();
int day = c.get(Calendar.DAY_OF_MONTH);
int month = c.get(Calendar.MONTH);
int year = c.get(Calendar.YEAR);
String date = day + "/" + (month + 1) + "/" + year;
Log.i("TAG", "--->" + date);