Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.09.21;
Скачать: 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 вся ветка

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

Наверх




Память: 0.49 MB
Время: 0.017 c
2-1217946538
Dmitry S
2008-08-05 18:28
2008.09.21
Аналог следующего update на Access-e


15-1217504410
Правильный$Вася
2008-07-31 15:40
2008.09.21
как перевести на английский


2-1218354797
Rimdus
2008-08-10 11:53
2008.09.21
коррекция даты по календарб рабочих дней


15-1217310112
Vlad Oshin
2008-07-29 09:41
2008.09.21
Сбылась мечта идиота :)удалось "скырть роцесс"


2-1218386852
comovets
2008-08-10 20:47
2008.09.21
TTreeView - просмотреть все дочерние узлы одного узла