Гость
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Как лучше всего сериализовать в строку массивы, списки, объекты / 3 сообщений из 3, страница 1 из 1
02.06.2016, 11:26
    #39248828
Шваров Евгений
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как лучше всего сериализовать в строку массивы, списки, объекты
...
Рейтинг: 0 / 0
02.06.2016, 14:29
    #39249136
servit
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как лучше всего сериализовать в строку массивы, списки, объекты
ZitRoWhat is the best way to serialize object /list/array/ etc to string?Если не JSON, то только XML.
Например:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
Class demo.test Extends (%RegisteredObject, %XML.Adaptor)
{

Property f0 As %List;

Property f1 As %List(ODBCDELIMITER = "");

Property f2 As %ListOfDataTypes;

Property f3 As %ArrayOfDataTypes;

ClassMethod Test()
{
  s t=..%New()
  s t.f0=$lb(1,2,3,",",5)
  s t.f1=t.f0

  s f2=##class(%ListOfDataTypes).%New()
  d f2.InsertList(t.f0)

  s f3=##class(%ArrayOfDataTypes).%New()
  d f3.SetAt(1,1)
  d f3.SetAt(2,2)
  d f3.SetAt(3,3)
  d f3.SetAt(",",4)
  d f3.SetAt(5,5)

  s t.f2=f2
  s t.f3=f3
  
  d t.XMLExportToString(.export,,"literal,indent")
  w export
}

}

USER>d ##class(demo.test).Test()
<test>
  <f0>1,2,3,,,5</f0>
  <f1>123,5</f1>
  <f2>
    <f2Item>1</f2Item>
    <f2Item>2</f2Item>
    <f2Item>3</f2Item>
    <f2Item>,</f2Item>
    <f2Item>5</f2Item>
  </f2>
  <f3>
    <f3Item f3Key="1">1</f3Item>
    <f3Item f3Key="2">2</f3Item>
    <f3Item f3Key="3">3</f3Item>
    <f3Item f3Key="4">,</f3Item>
    <f3Item f3Key="5">5</f3Item>
  </f3>
</test>
...
Рейтинг: 0 / 0
14.06.2016, 13:53
    #39255705
servit
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как лучше всего сериализовать в строку массивы, списки, объекты
ZitRoThe problem with all of the methods in %ZEN.Auxiliary.jsonProvider is that it writes JSON string directly to the current device, not allowing to get the string itself. But nevertheless I did it by rewriting this method and creating a custom method , which returns a string instead of printing JSON to the device. dc Есть несколько решений без изобретения велосипедов и усложнения кода:
...
Рейтинг: 0 / 0
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Как лучше всего сериализовать в строку массивы, списки, объекты / 3 сообщений из 3, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]