При использовании Джексона для сериализации все записанное содержимое файла имеет номер 0x00.JAVA

Программисты JAVA общаются здесь
Anonymous
При использовании Джексона для сериализации все записанное содержимое файла имеет номер 0x00.

Сообщение Anonymous »

Код: Выделить всё

public static void writeRecordHeadInfo(String rootPath, RecordHeadInfo recordHeadInfo) {
if (recordHeadInfo == null) {
return;
}
if (recordHeadInfo.getCreateDeviceHostId() == null || recordHeadInfo.getCreateDeviceHostId().isBlank()) {
recordHeadInfo.setCreateDeviceHostId(SaveUtil.getString(DataKeyEnum.HOST_ID));
recordHeadInfo.setCreateDeviceName(Properties.LOCAL_DEVICE_NAME);
}
Path filePath = Path.of(rootPath, RECORD_HEAD_INFO_JSON);
filePath.toFile().getParentFile().mkdirs();
try (FileChannel channel = FileChannel.open(filePath, StandardOpenOption.CREATE, StandardOpenOption.WRITE, StandardOpenOption.TRUNCATE_EXISTING)) {
Thread.sleep(1000);
ObjectMapper objectMapper = new ObjectMapper();
var buffer = ByteBuffer.wrap(objectMapper.writeValueAsBytes(recordHeadInfo));
int size = channel.write(buffer);
} catch (IOException e) {
log.error("", e);
} catch (InterruptedException e) {
throw new RuntimeException(e);
}
}
Возможно ли, что использование приведенного выше кода для сериализации приведет к тому, что записанное содержимое файла будет состоять из 0x00?
Изображение



Подробнее здесь: https://stackoverflow.com/questions/798 ... s-all-0x00

Вернуться в «JAVA»