COS Как установить Ens.StringContainer в строковое значение
Мне нравится понимать, как вы можете установить Ens.StreamConainer в строковое значение. Я просто вижу класс для установки OriginalFilename, но ничего для настройки тела.
s pRequest = ##class(Ens.StreamContainer).%New()
s pRequest.OriginalFilename = "Test"
d pRequest.Stream.Read(hl7) //Error Out
d pRequest.StreamSet(hl7) //Getting empty string
1 ответ
Решение
Если hl7
это поток:
s pRequest = ##class(Ens.StreamContainer).%New(hl7)
Это hl7
это строка:
s pStream = ##class(%Stream.GlobalCharacter).%New()
do pStream.Write(hl7)
s pRequest = ##class(Ens.StreamContainer).%New(pStream)
Несколько советов по коду:
d pRequest.Stream.Read (hl7) // Ошибка выхода
Read
читает из потока, и Write
пишет в стрим.
d pRequest.StreamSet (hl7) // Получение пустой строки
Это метод установки для Stream
имущество. Нет необходимости вызывать его напрямую, просто установите свойство.