Вниз
Скачать: CL | DM;

Как это будет на C#?   Найти похожие ветки 

← →
Перебежчик   (2008-07-27 21:33) [0]

Привет. Есть такой код:

var
 ST: TStrings;
 I: Integer;
begin
 ST := TStringList.Create;
 ST.Text := Memo1.Text;
 ..
 for I := 0 to ST.Count - 1 do
   ST[I] := ST[I] + "блаблабла";
 ..
end;


Очень простой код. Но уже несколько часов я мучаюсь с переносом его на C#. Пробовал и простой List и ArrayList, в результате получается что то вроде "<текст из Memo1>блаблабла", хотя "блаблабла" должно стоять в конце каждой строки. Что я делаю не так?


← →
Anatoly Podgoretsky ©   (2008-07-27 21:37) [1]

> Перебежчик  (27.07.2008 21:33:00)  [0]

В приведеном коде С# не видать, как не видать и что ты пробовал.
Приведеный код правильный!


← →
Palladin ©   (2008-07-27 21:42) [2]


>  Но уже несколько часов я мучаюсь с переносом его на C#.

я тоже мучаюсь... понятие догнать не мог где же там ТСтрингЛист в шисарпе...


← →
Перебежчик   (2008-07-27 21:43) [3]

2 Anatoly Podgoretsky

string Result = "";
ArrayList SL = new ArrayList();
SL.Add(Text);

for (int I = 0; I < SL.Count; I++)
{
 S = SL[I] + "блаблабла";
 Result = Result + S;
}
return Result;


← →
brrr   (2008-07-27 21:43) [4]

Не знаю, что у вас там за Мемо такое, но предлагю ковырять в сторону StringReader. Строки должны быть разделены \r\n


← →
Agent13 ©   (2008-07-27 21:56) [5]


> Перебежчик   (27.07.08 21:43) [3]

Твоя ошибка состоит в том, что ты надеешься после этого: > SL.Add(Text); получить текст в массиве уже разделённым по строкам.
А вообще, массив не нужен, можно так:

result = memoText.Replace("\r\n", "blabla\r\n");


← →
Перебежчик   (2008-07-27 22:03) [6]

Твоя ошибка состоит в том, что ты надеешься после этого: > SL.Add(Text); получить текст в массиве уже разделённым по строкам.

Да, об этом я знаю.

result = memoText.Replace("\r\n", "blabla\r\n");

Пример сверху только для того, чтобы показать принцип из Delphi. Реально, каждая строка может обрабатываться некой ф-цией. Есть подозрение, что замена crlf с помощью Replace в этом случае не поможет.


← →
Перебежчик   (2008-07-27 22:04) [7]

обрабатываться некой ф-цией

Как пример ф-ции - SL[I] := Trim(SL[I]);


← →
Agent13 ©   (2008-07-27 22:10) [8]


> Да, об этом я знаю.

Так в чём тогда проблема? Из TextBox.Lines можно загонять строки в массив по одной.


← →
Перебежчик   (2008-07-27 22:16) [9]

Из TextBox.Lines можно загонять строки в массив по одной.

ОК, а если это не TextBox, а string? :)


← →
Перебежчик   (2008-07-27 23:04) [10]

Все получилось, всем спасибо



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

Скачать: CL | DM;



Память: 0.47 MB
Время: -0.988 c
2-1218008748
SSSs
2008-08-06 11:45
2008.09.21
RichEdit взять кусок текста.


2-1218521158
Sergey2
2008-08-12 10:05
2008.09.21
Доступ к базе по локальной сети через IP


3-1206102916
Still Swamp
2008-03-21 15:35
2008.09.21
TParam и BLOB


11-1193561717
files32
2007-10-28 11:55
2008.09.21
Русский язык KOL+Lazarus+WinCE


15-1217024688
Германн
2008-07-26 02:24
2008.09.21
Редактирование AVI с видеокамеры Panasonic




   Наверх