Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.05.2010, 10:11   #1
DannerDOS
Пользователь
 
Регистрация: 01.12.2008
Сообщений: 27
Вопрос

Здравствуйте! Как занести содержимое строковой переменной в поток?
Код:
TMemoryStream(WString).SaveToStream(MStream);
Где, WString: WideString; MStream: TMemoryStream...

В Delphi 7...

Последний раз редактировалось Stilet; 06.05.2010 в 11:59.
DannerDOS вне форума Ответить с цитированием
Старый 06.05.2010, 12:02   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Вместо TMemoryStream используй TStringStream
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 06.05.2010, 12:27   #3
DannerDOS
Пользователь
 
Регистрация: 01.12.2008
Сообщений: 27
По умолчанию

Нужно хранить данные в юникоде!

т.е. что бы была возможность записать в поток юникод и затем вытащить от туда так же юникод...

Последний раз редактировалось Stilet; 06.05.2010 в 12:36.
DannerDOS вне форума Ответить с цитированием
Старый 06.05.2010, 12:36   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Ну string в Delphi200X как раз юникодовый, соответственно и TStrinStream должен быть юникодовый
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 06.05.2010, 13:16   #5
DannerDOS
Пользователь
 
Регистрация: 01.12.2008
Сообщений: 27
По умолчанию

Да... В этом и проблема что не в Delphi 7...
DannerDOS вне форума Ответить с цитированием
Старый 06.05.2010, 13:28   #6
DannerDOS
Пользователь
 
Регистрация: 01.12.2008
Сообщений: 27
По умолчанию

Код:
MStream := TMemoryStream.Create;
  WString := TntMemo1.Text;
  UString := UTF8Encode(WString);
  MStream.Write(UString, SizeOf(WideString) * Length(UString));
  MStream.Position := 0;
  MStream.Read(UString, MStream.Size);
  WString := UTF8Decode(UString);
  TntMemo1.Text := WString;
DannerDOS вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Скопировать текст из строковой переменной в поле ввода чужой програмы Ckomoroh Общие вопросы Delphi 4 14.12.2009 10:49
вывод переменной в поток на Си pysik Помощь студентам 2 17.08.2009 16:17
Как удалить часть строковой переменной Oooleg Microsoft Office Excel 1 21.07.2009 16:20
TMemoryStream присвоить строковой переменной inndim Общие вопросы Delphi 3 06.05.2009 11:36