
/**
* 把12小时格式的时间字符串转换为24小时格式的字符串
* input: 07:05:45PM
* output: 19:05:45
* input: 12:00:00PM
* output: 00:00:00
* @param lowFormatTimeStr
* @return
*/
public static String convertTimeFormate(String lowFormatTimeStr){
if(lowFormatTimeStr==null){
return null;
}
String trim = lowFormatTimeStr.trim();
if (trim.isEmpty()){
return null;
}
int length = trim.length();
if (length!=10){
return null;
}
String substring7 = trim.substring(0, 2);
if (substring7.equals("00")){
return null;
}else {
Integer i = Integer.valueOf(substring7);
if (i>12){
return null;
}
}
String substring8 = trim.substring(3, 5);
if (!(substring8.substring(0,1).equals("0"))){
Integer i = Integer.valueOf(substring8);
if (i>60){
return null;
}
}
String substring9 = trim.substring(6, 8);
if (!(substring9.substring(0,1).equals("0"))){
Integer i = Integer.valueOf("0");
if (i>60){
return null;
}
}
for (int i = 0; i < trim.length(); i++) {
char c = trim.charAt(i);
if (trim.endsWith("PM")){
continue;
}else if(trim.endsWith("AM")){
continue;
}else {
return null;
}
}
String substring = trim.substring(0, 2);
for (int i = 0; i < substring.length(); i++) {
char c = substring.charAt(i);
if (!Character.isDigit(c)){
return null;
}
}
String substring1 = trim.substring(2, 3);
if (!substring1.equals(":")){
return null;
}
String substring2 = trim.substring(3, 5);
for (int i = 0; i < substring2.length(); i++) {
char c = substring2.charAt(i);
if(!Character.isDigit(c)){
return null;
}
}
String substring3 = trim.substring(5, 6);
if(!substring3.equals(":")){
return null;
}
String substring4 = trim.substring(6, 8);
for (int i = 0; i < substring4.length(); i++) {
char c = substring4.charAt(i);
if (!Character.isDigit(c)){
return null;
}
}
String substring5 = trim.substring(0, 2);
StringBuilder stringBuilder = new StringBuilder();
if (trim.endsWith("PM")){
String substring6 = substring5.substring(0, 1);
Integer i=null;
if (substring6.equals("0")){
i = Integer.valueOf(substring5.substring(1));
}else {
i = Integer.valueOf(substring5);
}
if (i<12){
i+=12;
}else {
i-=12;
}
if (i>=10){
String s = String.valueOf(i);
stringBuilder.append(s);
stringBuilder.append(trim.substring(2,8));
}else {
StringBuilder stringBuilder1 = new StringBuilder();
stringBuilder1.append(0);
stringBuilder1.append(i);
stringBuilder1.append(trim.substring(2,8));
return stringBuilder1.toString();
}
}else {
return trim.substring(0,8);
}
return stringBuilder.toString();
}原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。