Вам не нужно создавать Timestamp
s. Вы можете сделать это с помощью Calendar
.
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY, hourOfDay);
calendar.set(Calendar.MINUTE, minute);
if(calendar.before(Calendar.getInstance())) {
calendar.add(Calendar.DATE, 1);
}
alarmManager.set(AlarmManager.RTC_WAKEUP,
calendar.getTimeInMillis(), pendingDinnerIntent);
Я бы также упомянул, что с KitKat, если ваш targetSdkVersion
равен 19 или выше, метод AlarmManager#set()
не является точным. Если вы хотите, чтобы ваш будильник срабатывал в определенное время, вам нужно использовать метод setExact*()
.
Инструмент Unix xxd
распределяется как часть vim
, и согласно http://www.vmunix.com/vim/util.html#xxd , источник для xxd ftp://ftp.uni-erlangen.de:21/pub/utilities/etc/xxd-1.10.tar.gz . Это было записано в C и является приблизительно 721 строкой. Единственная информация о лицензировании, данная для него, является этим:
* Distribute freely and credit me,
* make money and share with me,
* lose money and don't ask me.
инструмент Unix hexdump
доступен от http://gd.tuwien.ac.at/softeng/Aegis/hexdump.html . Это было записано в C и может быть скомпилировано из источника. Это вполне немного больше, чем xxd и распределяется под GPL.
Я часто использую этот небольшой отрывок, который я записал давным-давно. Это коротко и легко добавить где угодно при отладке и т.д.
#include <ctype.h>
#include <stdio.h>
void hexdump(void *ptr, int buflen) {
unsigned char *buf = (unsigned char*)ptr;
int i, j;
for (i=0; i<buflen; i+=16) {
printf("%06x: ", i);
for (j=0; j<16; j++)
if (i+j < buflen)
printf("%02x ", buf[i+j]);
else
printf(" ");
printf(" ");
for (j=0; j<16; j++)
if (i+j < buflen)
printf("%c", isprint(buf[i+j]) ? buf[i+j] : '.');
printf("\n");
}
}
Я видел PSPad, используемый в качестве Hex-редактора, но я обычно делаю то же самое, которое Вы делаете. Я удивлен, что нет "мгновенного ответа" для этого вопроса. Это - очень общая потребность.
я использовал это в одном из моих внутренних инструментов на работе.
Вы могли записать Ваш собственный диссектор для Wireshark?
Редактирование: записанный перед точностью в вопросе
xxd является 'стандартным' шестнадцатеричным дампом util и похож на него, должен решить Ваши проблемы