Стандартный шестнадцатеричный код дампа C++

Вам не нужно создавать 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*().

16
задан 11 revs 19 January 2017 в 15:06
поделиться

6 ответов

Инструмент 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.

6
ответ дан 30 November 2019 в 15:41
поделиться

Я часто использую этот небольшой отрывок, который я записал давным-давно. Это коротко и легко добавить где угодно при отладке и т.д.

#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");
  }
}
39
ответ дан 30 November 2019 в 15:41
поделиться

Я видел PSPad, используемый в качестве Hex-редактора, но я обычно делаю то же самое, которое Вы делаете. Я удивлен, что нет "мгновенного ответа" для этого вопроса. Это - очень общая потребность.

1
ответ дан 30 November 2019 в 15:41
поделиться

я использовал это в одном из моих внутренних инструментов на работе.

1
ответ дан 30 November 2019 в 15:41
поделиться

Вы могли записать Ваш собственный диссектор для Wireshark?

Редактирование: записанный перед точностью в вопросе

1
ответ дан 30 November 2019 в 15:41
поделиться

xxd является 'стандартным' шестнадцатеричным дампом util и похож на него, должен решить Ваши проблемы

0
ответ дан 30 November 2019 в 15:41
поделиться
Другие вопросы по тегам:

Похожие вопросы: