Delphi TJson сериализует пустой массив как null

Метод TJson.ObjectToJsonString из стандартной библиотеки пустые массивы в объектах сериализует как null, например:

TTest = class
public
  my_array: array of integer;
end;

Сериализуется в:

{
  "my_array": null
}

хотя должно быть, видимо:

{
  "my_array": []
}

К тому же игнорируется опция joIgnoreEmptyArrays.

Это очень похоже на ошибку Delphi 10.1 Berlin, так как в следующих версиях это поведение вроде бы исправили. Но можно ли что-то сделать в версии Berlin, чтобы не менять всю среду ради исправления такой ошибки?


Ответы (0 шт):