-4

我需要用这种模式解析一个长字符串:

1)'*'   (text,len:1)
2)accountCount  (number,len:2)
3)accountNumber1    (text,len:20)
4)accountNumber2    (text,len:20)
5)accountNumber3    (text,len:20)
6)accountNumber4    (text,len:20)
...
?)accountNumber'$accountCount'  (text,len:20)
?)'^'   (text,len:1)

如您所见,accountNumber 字段将重复 'accountCount' 次。

为我声明一个类String并设置accountCount,accountNumber1,accountNumber2,accountNumber3,...属性的最佳方法是什么?

4

1 回答 1

2

使用番石榴Splitter

final String in = "* 3      accountNumber1      accountNumber2      accountNumber3^";
final Iterable<String> accounts = Splitter.fixedLength(20).trimResults().split(in.subString(3, in.length - 1);

类似的东西。然后,如果需要,您可以“转换”accounts为对象。ListAccount

于 2013-05-14T04:55:51.730 回答