我无法找到我的确切问题的答案,所以在这里......我们说我有一个字符串数组,其时间值我希望转换为24小时,如下所示:
String[] strings = {"12:04 am", "12:04 pm"};
System.out.println("Pick-up Times: ");
for (String i: strings)
System.out.println(i);
System.out.println();
DateFormat format = new SimpleDateFormat("hh:mm a");
System.out.println("Converted to 24-Hour format: ");
for (String i: strings) {
Date date = format.parse(i);
Time time = new Time(date.getTime());
System.out.println(time);
}
输出:
接送时间:
上午12:04 下午12:04转换为24小时格式:
00:04:00
12时04分00秒
这很有效,但我们说我有一个范围,比如下午12点到12点10分,例如:
String[] strings = {"12:00 pm - 12:10 pm"};
System.out.println("Pick-up Times: ");
for (String i: strings)
System.out.println(i);
System.out.println();
DateFormat format = new SimpleDateFormat("hh:mm a");
System.out.println("Converted to 24-Hour format: ");
for (String i: strings) {
Date date = format.parse(i);
Time time = new Time(date.getTime());
System.out.println(time);
}
这是我的输出:
接送时间:
中午12点至12点10分转换为24小时格式:
12:00:00
我尝试过改变SimpleDateFormat:
DateFormat format = new SimpleDateFormat("hh:mm a - hh:mm a");
结果很有意思:
接送时间:
中午12点至12点10分转换为24小时格式:
12时10分00秒
我要找的结果是:
接送时间:
中午12点至12点10分转换为24小时格式:
12:00:00 - 12:10:00
有什么想法吗?
答案 0 :(得分:1)
这是OPs解决方案(从问题中提取):
解决方案非常简单。对于遇到同样问题的任何人来说,这都可以解决问题:
String[] strings = {"12:00 pm - 12:10 pm"};
System.out.println("Pick-up Times: ");
for (String i: strings)
System.out.println(i);
System.out.println();
DateFormat format = new SimpleDateFormat("hh:mm a");
int count = 0;
System.out.println("Converted to 24-Hour format: ");
for (String i: strings) {
String[] test = i.split(" - ");
for (String j: test)
{
Date date = format.parse(j);
Time time = new Time(date.getTime());
System.out.print(time);
if (count == 0)
System.out.print(" - ");
count++;
}
System.out.println();
}
输出:
接送时间:
中午12点至12点10分转换为24小时格式:
12:00:00 - 12:10:00
答案 1 :(得分:0)
好吧,如果问题与范围有关,可以将其拆分。我将为您提供几行代码,以便您根据代码进行调整:
String s = {"ABC - aaa - eee - ccc"};
String arr[] = s.split(" - ");
for(String str: arr)
SYstem.out.println(str);
您可以使用s
。
strings