作者TsaiCF (Feng)
看板java
标题Re: [问题] 分割字串的问题, 求救 >"<
时间Thu May 2 21:04:29 2013
如版主说的, 找 CSV parser 的 lib 比较快
但小心有些版本实作在处理换行字元时,跟 EXCEL 剖析的结果不太一样
有些版本则是处理 "" 不太相同。
要问实作思路的话,一般会取得 char array,再逐字处理。
//
//以下是程式片段的空壳....
//
//=================================
//List<String> allToken
//StringBuilder resultToken
//boolean tokenBlock
//boolean quoteBlock
//
char content[] = str.toCharArray();
for (int i = 0; i < content.length; i++) {
switch (content[i]) {
case ',':
// , 处理,看是否在双引号区域内
// do something
break;
case '\"':
// 双引号区域相关判断
// 有些判断要看 content[i + 1]
// do something
break;
default:
// doSomething
break;
}
if (!tokenBlock) {
// 遇到分隔用,後的第一个字元,可取出前一个 token
allTokens.add(resultToken.toString());
resultToken.setLength(0);
}
}
※ 引述《bera (k.k)》之铭言:
: 而进阶的资料可能会像
: String str =
: "小尚,\"Abby, Sun\",girl,0911-XXX0L9,\"si, Tokyo, Relax~~\",1988/11/20";
: 这样的形式
: 不知道可不可以请教一下思路呢? 谢谢~~~
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 122.116.20.54
1F:推 coolcomm:简单来说就是 state machine ... 05/02 21:41
3F:→ bera:感谢提供连结, 我努力化中~~ 05/03 09:13
4F:→ bera:感谢TsaiCF, 我试试看~~ 05/03 09:21