java如何连续,关于java:如何拆分连续字符串?

有人能通过示例代码解释如何拆分字符串吗?我把绳子贴在下面

String str="000F33353238343830323038353239323300000133B5150A8C002E3C188007C4D950039300A1090000F0080301000200F001030900010A000018000002480000013DC70000000000";

给定的字符串前34位是IMEI数字,后8位是时间戳等等。

你是说字节?使用带有适当参数的substring()。

"通过示例代码解释",所以不是代码工厂。

看看这里,可能对你有帮助。

可以使用字符串方法子字符串

substring(int beginIndex, int endIndex)

beginindex是包含的,endindex是独占的。substring返回origrianlstring的一部分的副本。所以:

String part = original.substring(beginIndex, endIndex);

或:

String part ="abcdefgh".substring(2,4) // part will be"cd"

在你的情况下:

String imei = str.substring(0, 34);

String timestamp = str.substring(34,34+8);

... do that for any part you want to extract.

在写位的地方测量字节。

为了进一步了解,您可以阅读关于Java字符串、HTTP://DOCS.Oracle .COM/JavaSe/1.5.0/DOCS/API/Java/Lang/Stutn.HTML的文档。

但我的问题是在你的代码中只显示IMEI号码。其他人呢?我怎样才能分开还押线呢?

@manjula添加后续的substring函数调用其他数据,如string timestamp = str.substring(34,42);。

我尝试过,但它在线程"main"java.lang.StringIndexOutOfBoundsException:String索引超出范围:42中得到类似错误的异常

如果beginindex或endindex在字符串之外,则将获取StringIndexOutOfBoundsException。在您的情况下,原始字符串(在您的问题中称为"str")少于42个字符。当您显示失败的代码和输出时,我将引导您完成。你可以在你的问题后面加上这个。

感谢U J&246;rg beyer

使用String.substring(int,int)。

Returns a new string that is a substring of this string. The substring begins at the specified beginIndex and extends to the character at index endIndex - 1.

注意零件返回,这意味着它不会更改原始String。

+1用于it does not alter the original String。

但我的问题是在你的代码中只显示IMEI号码。其他人呢?我怎样才能分开还押线呢?

您似乎已经复制/粘贴了您对J&rg beyer的回复中的评论。但两者的反应都是一样的。多次使用该方法,不同范围的int。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值