我试图用Java解决这个问题。我有一长串信息,我想根据给定字段的长度拆分字符串。
示例:`FirstNameLastName yy-mm-dd549Eastwolframstreet
我有一个字段列表及其长度。有n个字段。 示例字段:
如果名称小于9个字符,则空格占据剩余位置。 即姓氏长度为9,但只剩下8个字母,其中一个是空格。
从每个给定长度中提取这些字段的最佳方法是什么?
答案 0 :(得分:1)
知道每个部分都是一个确切的长度 - 如果它恰好少了,它被空格填充 - 这是使用String.substring(i,i)
和String.trim()
的完美情况。
例如:str.substring(0, 9)
是前九个字符。现在修剪它,任何额外的垫空间都将被消除。
答案 1 :(得分:1)
试试这个,
String value = "FirstNameLastName yy-mm-ddAddress FirstNameLastName yy-mm-ddAddress FirstNameLastName yy-mm-ddAddress ";
for (int i = 0; i < value.length(); i++)
{
System.out.println("First Name : "+value.substring(i, i + 9));
System.out.println("Last Name : "+value.substring((i + 9), i + 18));
System.out.println("Date : "+value.substring(i + 18, i + 26));
System.out.println("Address : "+value.substring(i + 26, i + 56));
i = i + 55;
}