我有时间跟随。
" Time : 06:00:00 AM "
我使用了以下分割方法,split(":")
。然后它从字符串中的所有":"
分割时间。
我想在第一个":"
之后分开时间,然后从那时开始删除"AM"
分数。
请允许任何人帮助我使用此代码。
我按如下方式构建了这个简单的示例。我在“:”之后分割数据的努力。当分裂时间出现上述问题时。
import java.util.ArrayList;
import java.util.List;
public class StringBuilderSample {
public static void main(String []arg) {
List<Object> dataList = new ArrayList<Object>();
Object[] dataArr = {
"Serial no : 10",
"Supplier ID : 1",
"Supplier Name : Md40",
"GRN no : 20555",
"Bag ID : 10",
"Weight : 500",
"Date : 09-10-2017",
"Time : 16:09 PM",
"User ID : 204"
};
for(int j=0;j<dataArr.length;j++) {
String arrayData = dataArr[j].toString();
Object[] fraction = arrayData.split(":");
if(fraction.length>2) {
StringBuilder strBuilder = new StringBuilder();
for(int i=1; i<fraction.length;i++) {
strBuilder.append(fraction[i]);
}
String newString = strBuilder.toString();
dataList.add(newString);
}else {
dataList.add(fraction[1]);
}
}
for(Object data : dataList) {
System.out.println(data);
}
}
}
答案 0 :(得分:0)
您可以使用split方法的limit参数:
Object[] fraction = arrayData.split(":", 2);
这将给出:
fraction[0] --> Time
fraction[1] --> 16:09 PM
答案 1 :(得分:0)
如果您的问题是将所有对象的字符串“Serial no:10”拆分为“10”并且时间为“:”并且导致您遇到麻烦,那么您可以尝试下面的代码
for(int j=0;j<dataArr.length;j++) {
String arrayData = dataArr[j].toString();
String fraction = arrayData.substring(arrayData.indexOf(":") + 1);
dataList.add(fraction);
}
for(Object data : dataList) {
System.out.println(data);
}