Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2007.03.04;
Скачать: [xml.tar.bz2];

Вниз

Помогите некотрректно работает DelimitedText в StringGrid   Найти похожие ветки 

 
Extar ©   (2007-01-10 14:33) [0]

В Мемо1 загружен текстовик (колонки разделенные табуляцией, в некоторых колонках содержатся пробелы)
Нужно разобрать в StringGrid по колонкам (по табуляциям но не по пробелам)

Использую:

StringGrid1.Rows[i].Delimiter:=#9;
StringGrid1.Rows[i].DelimitedText:=Memo1.Lines[j];


Разбирает и по табуляции и по пробелам.
Как разобрать игнорируя пробелы?
Или руками по символам в цикле каждую строку разбирать?
(естественно срочно нужно)
Delphi8

Спасибо заранее


 
Extar ©   (2007-01-10 14:34) [1]

Сорри, *некорректно в сабже


 
novill ©   (2007-01-10 14:43) [2]

ты всё с файлом возишься? :)

Ты ж не сказал что у тебя там проблеы есть.

Можно сделать еще вот таким способом (эта строчка вместо двух тех что выше)

StringGrid1.Rows[i].Text:=stringrelapce(Memo1.Lines[j],#9,#13#10,[rfReplac eAll]);


 
novill ©   (2007-01-10 14:44) [3]

rfReplaceAll слитно пишется


 
Anatoly Podgoretsky ©   (2007-01-10 14:50) [4]

> Extar  (10.01.2007 14:33:00)  [0]

Работает в соответствии с описанием и в соответствии с определением формата CSV
Твой текстовик не соответствует формату


 
Юрий Зотов ©   (2007-01-10 15:06) [5]

Временно заменить пробелы каким-нибудь спецсимволом, а потом сделать обратную замену.


 
Anatoly Podgoretsky ©   (2007-01-10 15:27) [6]

> Юрий Зотов  (10.01.2007 15:06:05)  [5]

По стандарту пробел спецсимвол, поэтому значения с пробелами должны браться в двойные кавычки, поспольку это не сделано, то придется прыгать с заменой


 
Extar ©   (2007-01-10 15:43) [7]

>Novill
Спасибо, но результат такой же почемуто(

>Anatoly Podgoretsky
Буду знать, спасибо

Думаю сделать вот так тупо:
1)Заменить в Мемо1 пробелы на какой-нибудь символ типа @
2)Раскидать по колонкам стрингрид
3)пробежать по гриду и заменить @ на пробелы
Финт ушами)


 
Extar ©   (2007-01-10 15:44) [8]

>Юрий Зотов
Прочитал позже


 
Extar ©   (2007-01-10 15:58) [9]

А как быстро в Мемо1.text заменить пробелы на другой символ?
(не успеваю уже сам)


 
гостъ   (2007-01-10 16:04) [10]


for I := 1 to Length ( Memo1.Text ) do
 if ( Memo1.Text[I] = $20 ) then
   Memo1.Text[I] := $40; {@}


 
гостъ   (2007-01-10 16:06) [11]

ошибся быстро :)


for I := 1 to Length ( Memo1.Text ) do
 if ( Memo1.Text[I] =#32 ) then
   Memo1.Text[I] := #64; {@}


 
Extar ©   (2007-01-10 16:11) [12]

for i:=1 to memo1.Lines.Text.Length do if memo1.Lines.Text[i]=" " then memo1.Lines.Text[i]:="@";

Первое что попробовал.
Left side cannot be assignet to rigth side.. или в этом духе.

Вопрос в силе


 
Anatoly Podgoretsky ©   (2007-01-10 16:13) [13]

> гостъ  (10.01.2007 16:06:11)  [11]

Text это свойство, а не переменная


 
гостъ   (2007-01-10 16:23) [14]

Сорри,
Ну тогда как советовали выше, novill


var
 s : String;
begin
 s := Memo1.Text;
 s := StringReplace ( s, " ", "@", [ rfReplaceAll ] );
 Memo1.Text := s;


 
Extar ©   (2007-01-10 16:30) [15]

memotexttmp:=memo1.Lines.Text;
for i:=1 to memotexttmp.Length do if memotexttmp[i]=" " then memotexttmp[i]:="@";
memo1.Lines.Text:=memotexttmp;

Так почемуто не сработало, а реплэйс помог, спасибо


 
Loginov Dmitry ©   (2007-01-10 16:38) [16]

> memotexttmp.Length


Это чего?


 
Extar ©   (2007-01-10 16:44) [17]

Var
memotexttmp:string;



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

Форум: "Основная";
Текущий архив: 2007.03.04;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.044 c
15-1171213081
RASkov
2007-02-11 19:58
2007.03.04
Принтеры


2-1171610324
Прохожев Максим
2007-02-16 10:18
2007.03.04
Нужна помощь


15-1170668688
TUser
2007-02-05 12:44
2007.03.04
Мда уж ...


15-1170866498
Parus
2007-02-07 19:41
2007.03.04
Хо-хо-хостинг


3-1165461471
petvv
2006-12-07 06:17
2007.03.04
Происходит округление до целого числа при выборке из базы





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский