0

在使用他们的命令 cgi 从 FlashAir 2nd gen 检索文件列表时,如下所述:FlashAir Get List CGI Command我得到十进制 16 位整数来表示文件的日期和时间。

该规范(在发布的链接中)解释了如何理解检索到的值,但它缺少 Java 示例。我尝试下载和检查发布在 FlashAir 开发人员网站FlashAir Tutorial for Android - Downloading Content中的 Android 示例代码,但它们只使用文件名,因此它们不执行任何转换。

4

1 回答 1

2

只需按指定提取位。

假设你有一个short timeand short date

int seconds = (time & 31) * 2;
int minutes = (time >> 5) & 63;
int hours   = (time >> 11) & 31;
int day   = date & 31;
int month = (date >> 5) & 15;
int year  = ((data >> 9) & 127) + 1980;

然后只是从中做出一个约会时间。

目前尚不清楚原始年份是否可以为负数。我这样写它们不能是,如果它们应该能够是负数(表示 1980 年之前的日期),只需删除& 127.

于 2016-02-06T16:48:27.940 回答