使用包含字段映射的Java String的最佳方法是什么?

时间:2014-10-07 14:16:16

标签: java string

我有一个具有特定字段布局的长字符串:

Char 1-6 = the type of message
Char 7 = system number
Char 8-9 = unused
Char 10 = shift number
and so on

我知道我可以使用String方法来处理这个问题,但我希望有一些更好的东西可以让我以更有意义的方式将字段与位置相关联。

这是否存在?谢谢你的帮助。

3 个答案:

答案 0 :(得分:1)

我不完全确定你想做什么,但这应该有效:

String typeOfMessage = str.substring(0,5);
char systemNumber  =   str.charAt(6);

......等等。

答案 1 :(得分:0)

使用jsefa @FlrDataType ...获取修正长度记录...

这样你就可以创建一个类并轻松定义位置

@FlrDataType
public class MyMessage {

   @FlrField(pos = 1, length = 5)
   String messageType;

   @FlrField(pos = 6, length = 1)
   String systemNumber;

   //etc
}

这是一个快速教程http://jsefa.sourceforge.net/quick-tutorial.html

答案 2 :(得分:0)

拥有一个带有变量的自定义类,每个变量定义它们所代表的信息类型。在该类的构造函数中,传递此String并通过解析String初始化不同字段的值。然后,您可以无缝地访问String的不同部分所代表的信息。

如果需要有关原始字符串的信息,您也可以将原始字符串保存在此新类的对象中。