我正在尝试将long转换为字节,因为我想在文件中以秒为单位写入时间戳。 Belwo是我用来将long转换为bytes []以及如何将它们写入文件的方法..
我从以下几行获得的内容:
bos.write( ( CSysUtils.longToBytes(CSysUtils.getTSMilli()) ) );
是一种难以理解的代码/格式:
码:
public static long getTSSec() {
Log.w(TAG, CSubTag.bullet("getTSSec"));
return System.currentTimeMillis()/1000;
}
public static byte[] longToBytes(long l) {
byte[] result = new byte[8];
for (int i = 7; i >= 0; i--) {
result[i] = (byte)(l & 0xFF);
l >>= 8;
}
return result;
}
写入文件:
fos = new FileOutputStream(file, true);
bos = new BufferedOutputStream(fos);
bos.write( ( CSysUtils.longToBytes(CSysUtils.getTSSec()) ) );
答案 0 :(得分:0)
你不能这样做?:
bos.write(Long.toString(CSysUtils.getTSSec()).getBytes());
这样,毫秒在输出文件中是人类可读的。
这就是你需要的吗?