Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2014.03.23;
Скачать: CL | DM;

Вниз

работа с TStringStream   Найти похожие ветки 

 
Owl   (2013-05-31 11:24) [0]

Как удалить последний LINE_BREAK


procedure TForm1.FormCreate(Sender: TObject);
const
 LINE_BREAK = #13#10;
var
 I: Integer;
 SS: TStringStream;
begin
 SS := TStringStream.Create("");
 for I := 0 to 10 do
   SS.WriteString(IntToStr(I) + LINE_BREAK);
 // Здесь нужно удалить последний LINE_BREAK
 ShowMessage(SS.DataString);
end;


 
"Добрый Сок"   (2013-05-31 11:42) [1]

TMyStringStream = class(TStringStream);

var
 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
const
LINE_BREAK = #13#10;
var
I: Integer;
SS: TStringStream;
begin
SS := TStringStream.Create("");
for I := 0 to 10 do
  SS.WriteString(IntToStr(I) + LINE_BREAK);
TMyStringStream(SS).SetSize( Length(SS.DataString) - Length(LINE_BREAK) );
SS.WriteString("---");
ShowMessage(SS.DataString);
end;


 
Jeer ©   (2013-05-31 12:02) [2]

Да хоть так

for i := 0 to Max-1 do
 if i = (Max-1) then WriteString(IntToStr(i))
 else WriteString(IntToStr(i) + LINE_BREAK);


 
"Добрый Сок"   (2013-05-31 12:14) [3]

Конечно, проще не писать, чем писать и удалять
и лучше, имхо, разбить
т.е. не
for i := 0 to Max-1 do
if i = (Max-1) then WriteString(IntToStr(i))
else WriteString(IntToStr(i) + LINE_BREAK);

а
for i := 0 to Max-1-1 do
WriteString(IntToStr(i) + LINE_BREAK);
WriteString(IntToStr(Max-1))

неча на каждой итерации проверять


 
Медвежонок Пятачок ©   (2013-05-31 12:40) [4]

ShowMessage(Trim(SS.DataString));


 
Jeer ©   (2013-05-31 15:50) [5]

>ShowMessage(Trim(SS.DataString));

Не-не-не.. так нечестно, я ж съэкономил два байта, как раз тех самых, мокрых. :)



Страницы: 1 вся ветка

Текущий архив: 2014.03.23;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.007 c
2-1371311691
novai
2013-06-15 19:54
2014.03.23
Вызов метода родителя


2-1370371622
oliksin
2013-06-04 22:47
2014.03.23
записи и файлы!


2-1370690219
oliksin
2013-06-08 15:16
2014.03.23
Как вывести сумму строк из мемо?


2-1370095621
Cobalt
2013-06-01 18:07
2014.03.23
TReader error: Invalid property value


2-1370416151
Psionic
2013-06-05 11:09
2014.03.23
Hint