The*_*zer 23 java android calendar date
我无法以两位数格式显示日期.我希望它是这样的,当白天或月份是一个数字的例子:4它会显示04.我很难想出它的逻辑,如果有人可以帮助我,我会非常感激.
Calendar c = Calendar.getInstance();
int year = c.get(Calendar.YEAR);
int day = c.get(Calendar.DAY_OF_MONTH);
int month = c.get(Calendar.MONTH);
if (month % 10 == 0) {
Place = 0 + month;
}
String Dates = year + "-" + Place + "-" + day;
Date.setText((Dates));
Run Code Online (Sandbox Code Playgroud)
Moh*_*ikh 45
DecimalFormat mFormat= new DecimalFormat("00");
mFormat.format(Double.valueOf(year));
Run Code Online (Sandbox Code Playgroud)
在你的情况下:
mFormat.setRoundingMode(RoundingMode.DOWN);
String Dates = mFormat.format(Double.valueOf(year)) + "-" + mFormat.format(Double.valueOf(Place)) + "-" + mFormat.format(Double.valueOf(day));
Run Code Online (Sandbox Code Playgroud)
小智 15
请使用SimpleDateFormat
SimpleDateFormat sd1 = new SimpleDateFormat("dd-MMM-yyyy");
System.out.println("Date : " + sd1.format(new Date(c.getTimeInMillis()));
Run Code Online (Sandbox Code Playgroud)
产量
Date : 18-Apr-2012
Run Code Online (Sandbox Code Playgroud)
V.J*_*.J. 10
Calendar c = Calendar.getInstance();
int year = c.get(Calendar.YEAR);
int day = c.get(Calendar.DAY_OF_MONTH);
int month = c.get(Calendar.MONTH)+1;
String Dates = year + "-" +(month<10?("0"+month):(month)) + "-" + day;
Date.setText((Dates));
Run Code Online (Sandbox Code Playgroud)
小智 8
if (dayOfMonth < 10) {
NumberFormat f = new DecimalFormat("00");
Sting date = String.valueOf(f.format(dayOfMonth));
}
Run Code Online (Sandbox Code Playgroud)
小智 6
您可以使用 String.format() 方法。
例子 :
String.format("%02d", month);
Run Code Online (Sandbox Code Playgroud)
因此,如果所选月份小于 10,他们会在月份前面添加“0”。
LocalDate.now()\n .toString()\nRun Code Online (Sandbox Code Playgroud)\n\n\n\n\n2016-01-07
\n
最好始终明确指定您想要/预期的时区。
\n\nLocalDate.now( ZoneId.of( "America/Montreal" ) )\n .toString()\nRun Code Online (Sandbox Code Playgroud)\n\n您正在使用的 java.util.Calendar 类现在已成为遗留类。避免此类以及 java.util.Date 等。事实证明,这些设计很糟糕、令人困惑且麻烦。
\n\n旧的日期时间类已被Java 8 及更高版本中内置的java.time框架取代。许多功能已在ThreeTen-Backport项目中向后移植到 Java 6 和 7,并在ThreeTenABP中进一步适应 Android 。
\n\n这些现代类可以通过一行代码实现您的目标,如下所示。
\n\n旧的过时的日期时间类和 java.time 类都提供格式化功能。您无需编写自己的格式化代码。
\n\n时区对于确定日期至关重要。世界各地的日期因时区而异,东部地区新的一天黎明较早。这个问题在问题和其他答案中被忽略了。如果省略,则隐式应用 JVM\xe2\x80\x99s 当前默认时区。最好明确指定您想要/预期的时区。
\n\nLocalDate对于没有时间和时区的仅日期值,请使用LocalDate. 虽然 中未存储任何时区LocalDate,但时区确定 \xe2\x80\x9ctoday\xe2\x80\x9d。
ZoneId zoneId = ZoneId.of( "America/Montreal" );\nLocalDate today = LocalDate.now( zoneId );\nRun Code Online (Sandbox Code Playgroud)\n\n您所需的两位数 YYYY-MM-DD 格式恰好符合ISO 8601标准,该标准定义了日期时间值的文本表示的合理格式。java.time 类中默认使用此标准来解析/生成字符串。
\n\nString output = today.toString();\nRun Code Online (Sandbox Code Playgroud)\n\n\xe2\x80\x99 就是全部,3 行代码。你甚至可以将它们结合起来。
\n\nString output = LocalDate.now( ZoneId.of( "America/Montreal" ) ).toString();\nRun Code Online (Sandbox Code Playgroud)\n\njava.time框架内置于 Java 8 及更高版本中。这些类取代了麻烦的旧遗留日期时间类,例如java.util.Date, Calendar, & SimpleDateFormat。
Joda -Time项目现在处于维护模式,建议迁移到java.time类。
\n\n要了解更多信息,请参阅Oracle 教程。并在 Stack Overflow 上搜索许多示例和解释。规格为JSR 310。
\n\n您可以直接与数据库交换java.time对象。使用与JDBC 4.2或更高版本兼容的JDBC 驱动程序。不需要字符串,不需要类。java.sql.*
从哪里获取 java.time 类?
\n\nThreeTen -Extra项目通过附加类扩展了 java.time。该项目是 java.time 未来可能添加的内容的试验场。您可能会在这里找到一些有用的类,例如Interval、、、等等。YearWeekYearQuarter
纯粹使用 Java 8 Time 库:
String date = LocalDate.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd"));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
47341 次 |
| 最近记录: |