Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C++ Builder > Склеить строку


Автор: Лена 16.1.2009, 19:16
Помогите с управляющими символами. Никак не могу правильно склеить строку. Есть код:
Код

AnsiString Path = ExtractFilePath(Application->ExeName);
AnsiString way = Path + "gp.html";
AnsiString str;
 str="<iframe src=\"http://127.0.0.1/gp.html\" id=\"FrameId\"\nstyle="
 "\"position:absolute;left:0px;top:0px;width:775px;height:510px\"></iframe>";


Мне надо вместо http://127.0.0.1/gp.html вставить в строку str переменную way и сохранить вокруг нее кавычки, вот так:
str="<iframe src="переменная way содержащая путь к файлу" id="FrameId" и т.д.


Автор: ddzoff 16.1.2009, 19:53
Не совсем понял какая строка должна получится,но в любом случае не понимаю,почему нельзя просто все дело склеить с помощью плюса?

Код

str="<iframe src="+way+" id="  и т.д.


Может я конечно что-то путаю, но помоему в Билдере это точно не возбранялось ))

Автор: Artemon 16.1.2009, 19:57
Код

AnsiString Path = ExtractFilePath(Application->ExeName);
  AnsiString way = Path + "gp.html";
  AnsiString str;

  str="<iframe src=\"" + way + "\" id=\"FrameId\" \nstyle= \"position:absolute;left:0px;top:0px;width:775px;height:510px\"></iframe>";

  ShowMessage(str);

Автор: TiKKi 16.1.2009, 20:09
Код

AnsiString    Way = ExtractFilePath(Application->ExeName) + "gp.html",
              Str = "<iframe src=\"http://127.0.0.1/gp.html\" id=\"FrameId\"\nstyle=\"position:absolute;left:0px;top:0px;width:775px;height:510px\"></iframe>";
int    SrcPos = Str.Pos( "src" );
       Str = Str.Delete( SrcPos, Str.SubString( SrcPos, Str.Length() ).Pos( " " ) );
       Str.Insert( "src=\"" + Way + "\" ", SrcPos );

Если я правильно понял. А теперь спать, завтра работа...

Автор: mrbrooks 19.1.2009, 09:53
Лена, 
Код

AnsiString Path = ExtractFilePath(Application->ExeName);
AnsiString way = Path + "gp.html";
AnsiString str;
 str="<iframe src=\"http://127.0.0.1/gp.html\" id=\"FrameId\"\nstyle="
 "\"position:absolute;left:0px;top:0px;width:775px;height:510px\"></iframe>";
str = StringReplace(str,"http://127.0.0.1/gp.html",way,TReplaceFlags()<<rfReplaceAll);

Автор: Лена 19.1.2009, 10:17
Большое всем спасибо!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)