我有这段代码:
BufferedReader br =new BufferedReader(new FileReader("userdetails.txt"));
String str;
ArrayList<String> stringList = new ArrayList<String>();
while ((str=br.readLine())!=null){
String datavalue [] = str.split(",");
String category = datavalue[0];
String value = datavalue[1];
stringList.add(category);
stringList.add(value);
}
br.close();
当变量category和value没有逗号(,)时,它可以工作,但是变量值中的值确实包含逗号。是否有一种方法可以拆分不使用逗号的索引?
答案 0 :(得分:0)
答案 1 :(得分:0)
如果我理解正确的话:
String str = "category,vvvv,vvv";
int i = str.indexOf(',');
String category = str.substring(0, i);
String value = str.substring(i + 1);
答案 2 :(得分:0)
split()使用正则表达式。 如果读者代码完美无缺,请执行
str.split("\\,");
答案 3 :(得分:0)
解决方案如下:
BufferedReader br =new BufferedReader(new FileReader("userdetails.txt"));
String str;
ArrayList<String> stringList = new ArrayList<String>();
while ((str=br.readLine())!=null){
int firstIndexOfComma = str.indexOf(',');
String category = str.substring(0, firstIndexOfComma);
String value = str.substring(firstIndexOfComma + 1);
stringList.add(category);
stringList.add(value);
System.out.println(category+" "+value);
}
br.close();
答案 4 :(得分:-2)
不是100%肯定,但你不能这样做
String datavalue [] = str.split("--");
还是什么?
示例文件:
x,y,z--123--Hello World
输出:
"x,y,z",
"123",
"Hello World"