我必须从包含管道分隔字符串
的文件中读取输入A|UK|2|1
B||3|1
StringTokenizer st = new StringTokenizer(data,"|");
String id=st.nextToken();
String country=st.nextToken();
String count=st.nextToken();
String flag=st.nextToken();
对于第二行文件,有一个空的内容,如果没有内容,我想分配“”字符串,我如何使用nextToken执行此操作?
谢谢
答案 0 :(得分:4)
我建议您使用拆分,它将无任何例外地工作
String yourstring = "B||3|1";
String [] arr = yourstring.split("\\|");
String id=arr[0];
String country=arr[1];
String count=arr[2];
String flag=arr[3];
答案 1 :(得分:3)
一种解决方案可能是使用三参数构造函数
StringTokenizer(String str, String delim, boolean returnDelims)
传递true
作为第三个参数。
这样StringTokenizer就会将分隔符作为标记,因此您只需检查两个或多个连续分隔符即可检查空字段。