我不熟悉
java,我需要获取当前的datetime并将其表示为一个字符串,例如:
#1:135790246811221:1:*,00000000,UP,060B08,0D1908#
其中060B08是YYMMDD:GPS日期(2006年11月8日). 6个字符,十六进制.
和0D1908是HHMMSS:发送时间,6个字符,十六进制
YYMMDD:发送日期(13:25:08),6个字符,十六进制,例如::表示060B08.
我正在尝试这段代码:
Calendar cal = Calendar.getInstance();
Date date = new Date();
String date_str = String.format("%02x%02x%02x", cal.getTime().getYear(), cal.getTime().getMonth(), cal.getTime().getDay());
String hour_str = String.format("%02x%02x%02x", cal.getTime().getHours(), cal.getTime().getMinutes(), cal.getTime().getSeconds());
String content = "#1:" + imei + ":1:*,00000000,UP,"+ date_str.getBytes() +","+ hour_str.getBytes()+"#";
ChannelBuffer buf = ChannelBuffers.dynamicBuffer();
buf.writeBytes(content.getBytes(Charset.defaultCharset()));
channel.write(buf);
但是错了,正在回归:
#1:359672050130411:1:*,00000000,UP,[B@7f07ff6a,[B@d4dd3b6#