docs: @SuppressWarnings("unchecked")
      public int getDynamicFieldByteSize(Object bean, Charset charset)
              throws IllegalAccessException, InvocationTargetException, NoSuchMethodException {
          Object value = PropertyUtils.getProperty(bean, field.getName());
          if (null == value) {
              return 0;
          }
          switch (dynamicFieldType) {
              // 如果是打包剩余的所有Byte
              case allRestByte:
                  return ((String) value).getBytes(charset).length;
              // 如果是文件metadata
              case metadata:
                  return MetadataMapper.toByte((Set<MetaData>) value, charset).length;
              default:
                  return getFieldSize(field);
          }
      }