我在Android中使用以下格式显示日期和时间:
2013-06-18 12:41:24
如何将其更改为以下格式?
18-jun-2013 12:41 pm
答案 0 :(得分:70)
这是工作代码
public String parseDateToddMMyyyy(String time) {
String inputPattern = "yyyy-MM-dd HH:mm:ss";
String outputPattern = "dd-MMM-yyyy h:mm a";
SimpleDateFormat inputFormat = new SimpleDateFormat(inputPattern);
SimpleDateFormat outputFormat = new SimpleDateFormat(outputPattern);
Date date = null;
String str = null;
try {
date = inputFormat.parse(time);
str = outputFormat.format(date);
} catch (ParseException e) {
e.printStackTrace();
}
return str;
}
答案 1 :(得分:4)
SimpleDateFormat format = new SimpleDateFormat("dd-MMM-yyyy hh:mm a");
String date = format.format(Date.parse("Your date string"));
答案 2 :(得分:3)
public class MainActivity extends AppCompatActivity {
private Date oneWayTripDate;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
String date ="2017-05-05 13:58:50 ";
SimpleDateFormat input = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
SimpleDateFormat output = new SimpleDateFormat("MMMM dd,yyyy @hh:mm:ss aa");
try {
oneWayTripDate = input.parse(date); // parse input
} catch (ParseException e) {
e.printStackTrace();
}
Log.e("===============","======currentData======"+output.format(oneWayTripDate);
}
}
答案 3 :(得分:2)
使用以下代码:
SimpleDateFormat formatter = new SimpleDateFormat("dd-MMM-yyyy hh:mm a");
String date = formatter.format(Date.parse("Your date string"));
希望它会对你有所帮助。
答案 4 :(得分:2)
您必须这样设置
Date date=new Date("Your date ");
SimpleDateFormat formatter5=new SimpleDateFormat("required format");
String formats1 = formatter5.format(date);
System.out.println(formats1);
答案 5 :(得分:2)
像这样设置答案以设置日期格式
Date date=new Date("Your date ");
SimpleDateFormat formatter5=new SimpleDateFormat("required format");
答案 6 :(得分:1)
我在项目中修改了Rusabh的日常格式化日期答案
public String formatDate(String dateToFormat, String inputFormat, String outputFormat) {
try {
Logger.e("DATE", "Input Date Date is " + dateToFormat);
String convertedDate = new SimpleDateFormat(outputFormat)
.format(new SimpleDateFormat(inputFormat)
.parse(dateToFormat));
Logger.e("DATE", "Output Date is " + convertedDate);
//Update Date
return convertedDate;
} catch (ParseException e) {
e.printStackTrace();
}
return null;
}
<强>用法:强>
String inputFormat = "yyyy-MM-dd'T'HH:mmz";
String OutPutFormat = "MMMM dd', 'yyyy hh:mma";
String convertedDate = formatDate(asOfDateTime, inputFormat, OutPutFormat);
答案 7 :(得分:0)
使用以下代码:
Date date=new Date("2013-06-18 12:41:24");
SimpleDateFormat formatter5=new SimpleDateFormat("dd-MM-yyyy hh:mm a");
String formats1 = formatter5.format(date);
System.out.println(formats1);
答案 8 :(得分:0)
首先使用Calendar
对象创建Date
对象。然后使用您需要的日期,年份,月份等构建String
。然后你可以使用它。
您可以使用Calendar
类中的get()方法获取数据。
答案 9 :(得分:0)
我们可以使用此格式转换日期。将日期作为参数
传递 public String formatdate(String fdate)
{
String datetime=null;
DateFormat inputFormat = new SimpleDateFormat("dd-MM-yyyy");
SimpleDateFormat d= new SimpleDateFormat("yyyy-MM-dd");
try {
Date convertedDate = inputFormat.parse(fdate);
datetime = d.format(convertedDate);
}catch (ParseException e)
{
}
return datetime;
}
答案 10 :(得分:0)
private val dateFormatter: Format = SimpleDateFormat(
android.text.format.DateFormat.getBestDateTimePattern(
Locale.getDefault(),
"dMMyyjjmmss"
),
Locale.getDefault()
)
val dateText = dateFormatter.format(Date(System.currentTimeMillis()))
这是 Android 上可用的最佳选择,它将根据设备默认定位来格式化时间
取决于区域设置的示例输出:
02/18/2021, 1:00:00 PM
(美国使用 12 格式时间)18.2.2012, 13:00:00
(乌克兰使用 24 格式时间)因此它会自动为您完成所有繁重的工作
附言如果您需要 2021 而不是 21,则将 yy
替换为 yyyy
,如果您希望将月份显示为单词而不是数字,则将 MM
替换为 MMM
等等
例如美国的 "dMMMyyyyjjmmss"
将返回:
Feb 18, 2021, 1:43:20 PM
对于俄罗斯:
18 февр. 2021 г., 13:44:18
太棒了,不是吗?