Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как считать из этого файла? 
:(
    Опции темы
CrasyMen
Дата 21.4.2007, 21:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 264
Регистрация: 19.12.2006

Репутация: нет
Всего: 3



Допустим у нас есть текстовый файл такого содержания:
Код

Seagate U4 6421    2000    7    5400    506
Quantum Fireball ICT10    2000    10    5400    533
Seagate Barracuda ST310210A    2000    10    5400    551
IBM Deskstar 75GXP    2000    30    5400    864
Western Digital WD1200JB    2002    120    7200    1008
Seagate Cheetah X15-36LP    2001    18    15000    1127
Samsung SpinPoint SP4002H    2002    40    7200    560
IBM Ultrastar 73LZX    2001    36    10000    1592
Samsung SpinPoint SV0411N    2003    40    5400    398
IBM Deskstar IC35L180AVV 207-1    2003    160    7200    1187
Western Digital 800 JB    2003    80    7200    649
Seagate Cheetah 36ES    2001    36    10000    1483
Seagate Barracuda V ST3120023A    2003    40    5400    580
Maxtor Fireball 3 2F040J0    2003    40    7200    617
Western Digital Caviar WD1200JB    2001    120    7200    853
Seagate Barracuda 36ES    2001    36    7200    999
Western Digital Caviar WD1200BB    2001    120    7200    801
IBM Ultrastar 36Z15    2001    36    15000    2745
Seagate Cheetah 73LP    2001    74    10000    3105
Maxtor DiamondMax 541DX    2001    20    5400    376
Samsung SpinPoint SV6003H    2001    60    5400    534
Seagate Barracuda ATA IV    2001    40    7200    447
Maxtor D540X-4D    2001    60    5400    492
Western Digital WD360GD    2003    36    10000    554
Maxtor MaxLine Plus II    2003    240    7200    902
Seagate Barracuda ST340016A    2002    40    7200    849
Maxtor MaxLine III    2004    300    7200    1725
IBM Deskstar 60GXP    2002    60    7200    895
Seagate U6 ST340810A    2002    40    5400    802
Western Digital Caviar WD600AB    2002    60    5400    837
IBM Deskstar 120GXP    2002    120    7200    1003
Maxtor DiamondMax D540X-4K    2002    80    5400    972
Samsung SpinPoint SV8004H    2002    80    5400    966
Western Digital Caviar WD300BB    2004    300    5400    1619
Samsung SpinPoint SP1614C    2004    160    7200    852
Hitachi Deskstar 7K250    2004    120    7200    823
Western Digital Raptor WD740GD    2004    74    10000    1056
Seagate Barracuda ST3200822AS    2004    200    7200    900
Maxtor DiamondMax Plus9 6Y250MO    2004    250    7200    1197
Maxtor Atlas 15K II    2005    80    15000    2135
Seagate Cheetah 10K.6    2005    54    10000    1322
Hitachi HUS103030FL3800    2005    68    10000    4019
Maxtor DiamondMax 10    2005    300    7200    982
Maxtor DiamondMax 6B250S0    2005    250    7200    897
Seagate Cheetah ST3146854LW    2005    146    15000    4293
Samsung HD160J    2005    160    7200    765
Seagate Barracuda ST3500641AS    2006    500    7200    1839
Seagate Barracuda ST3400832NS    2006    400    7200    1326
Seagate Barracude ST3750640AS    2006    750    7200    2643
Samsung HD300LJ    2006    300    7200    889
Samsung HD400LJ    2006    400    7200    961
Western Digital WD5000KS    2006    500    7200    1433

Здесь указано название винчестера, размер, об/мин, цена. Если не трудно приведите код программы которая считывает файл и выводит его содержимое в четыре TListBox'а (отдельно название, размер, об/мин, цена)
 smile 
Заранее благодарю


--------------------
Человек просто обязан ошибаться, раз другие учатся на его ошибках.
[color=skyblue]Хочу сменить ник и сменю как только дадут такую возможность.[/color]
PM MAIL ICQ   Вверх
Romikgy
Дата 21.4.2007, 22:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: 11
Всего: 146



1. разделяются чем слова ? табами?
2. имхо данный сабж в центр помощи


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
CrasyMen
Дата 21.4.2007, 22:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 264
Регистрация: 19.12.2006

Репутация: нет
Всего: 3



Цитата(Romikgy @  21.4.2007,  22:14 Найти цитируемый пост)
1. разделяются чем слова ? табами?

да


--------------------
Человек просто обязан ошибаться, раз другие учатся на его ошибках.
[color=skyblue]Хочу сменить ник и сменю как только дадут такую возможность.[/color]
PM MAIL ICQ   Вверх
Klin
Дата 21.4.2007, 22:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1938
Регистрация: 7.10.2002
Где: Краснодар

Репутация: 20
Всего: 25



Ребята, вы что издеваетесь? Мало того, что поиск для нас вообще не работает, так вам теперь лень глаза на два поста вниз опустить?!  smile 
ссылка
Вместо мемо используете ListBox.


--------------------
Я человек - попробуйте обвинить меня за это.
PM MAIL   Вверх
Romikgy
Дата 21.4.2007, 22:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: 11
Всего: 146



Вроде так но не проверял
Код

TListBox *l1,*l2,*l3,*l4,*l5; это твои лист боксы

void load_file()
{
var 
 TStringList *file_,*cur_str ;
 long i;

file_=new TStringList;
cur_str:=new TStringList;
file_->LoadFromFile("tra.tra");
for (i=0;i<file_.Count;i++)
{
cur_str->Text:=StringReplace(file_->Strings[i],"\t","\n",TReplaceFlags()<<rfReplaceAll); 
l1->Add(cur_str->Strings[0]);    
l2->Add(cur_str->Strings[1]);    
l3->Add(cur_str->Strings[2]);    
l4->Add(cur_str->Strings[3]);    
l5->Add(cur_str->Strings[4]);    
}
delete cur_str;
delete file_;
}



--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
Klin
Дата 21.4.2007, 23:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1938
Регистрация: 7.10.2002
Где: Краснодар

Репутация: 20
Всего: 25



Перевел на си, но толи переводчик из меня корявый, то ли у вас с кодом что-то не то:
Код

TStringList *file_ = new TStringList;
TStringList *cur_str = new TStringList;
long i;
file_->LoadFromFile("data.txt");
for (i=0;i<file_->Count;i++)
{
cur_str->Text=StringReplace(file_->Strings[i],"\t","\n",TReplaceFlags()<<rfReplaceAll);
ListBox1->Items->Add(cur_str->Strings[0]);
ListBox2->Items->Add(cur_str->Strings[1]);
ListBox3->Items->Add(cur_str->Strings[2]);
ListBox4->Items->Add(cur_str->Strings[3]);
ListBox5->Items->Add(cur_str->Strings[4]);
}
delete cur_str;
delete file_;


Ошибка: List index out of bonus (1)

ps. я прекрасно знаю, что означает эта ошибка, но в силу слабости мозга перевести не могу smile


--------------------
Я человек - попробуйте обвинить меня за это.
PM MAIL   Вверх
dumb
Дата 22.4.2007, 02:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


sceloglauxalbifacies
****


Профиль
Группа: Экс. модератор
Сообщений: 2929
Регистрация: 16.6.2006

Репутация: 32
Всего: 158



Цитата(Klin @  21.4.2007,  23:35 Найти цитируемый пост)
Ошибка: List index out of bonus (1)
ps. я прекрасно знаю, что означает эта ошибка, но в силу слабости мозга перевести не могу

это ты в силу слабости глаз не можешь перевести... smile ...out of bounds...
а происходит так оттого, что в твоем data.txt данные разделяются пробелами, а не табами. надо либо StringReplace(..."    ","\t"... сначала сделать, либо сразу "    "->"\n".
PM MAIL   Вверх
Klin
Дата 22.4.2007, 16:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1938
Регистрация: 7.10.2002
Где: Краснодар

Репутация: 20
Всего: 25



Цитата(dumb @  22.4.2007,  03:34 Найти цитируемый пост)
 данные разделяются пробелами, а не табами

Блин, спрашивали ведь smile


--------------------
Я человек - попробуйте обвинить меня за это.
PM MAIL   Вверх
CrasyMen
Дата 8.5.2007, 00:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 264
Регистрация: 19.12.2006

Репутация: нет
Всего: 3



Klin, Спасибо помогло.
Пытался адаптировать этот код:
Цитата(Klin @  21.4.2007,  23:35 Найти цитируемый пост)
TStringList *file_ = new TStringList;
TStringList *cur_str = new TStringList;
long i;
file_->LoadFromFile("data.txt");
for (i=0;i<file_->Count;i++)
{
cur_str->Text=StringReplace(file_->Strings[i],"\t","\n",TReplaceFlags()<<rfReplaceAll);
ListBox1->Items->Add(cur_str->Strings[0]);
ListBox2->Items->Add(cur_str->Strings[1]);
ListBox3->Items->Add(cur_str->Strings[2]);
ListBox4->Items->Add(cur_str->Strings[3]);
ListBox5->Items->Add(cur_str->Strings[4]);
}
delete cur_str;
delete file_;

для формы на которой есть один ComboBox (в него вводим из файла название напр. "Seagate Barracuda 36ES"), остальные характеристики выводятся в Label1 - Label8. Если нечего выводить то Caption в Label должна быть пустой. В даном случае пустыми должны быть Label5 - Label8.

и ... облом.
помогите  

Это сообщение отредактировал(а) CrasyMen - 8.5.2007, 00:12


--------------------
Человек просто обязан ошибаться, раз другие учатся на его ошибках.
[color=skyblue]Хочу сменить ник и сменю как только дадут такую возможность.[/color]
PM MAIL ICQ   Вверх
Klin
Дата 8.5.2007, 00:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1938
Регистрация: 7.10.2002
Где: Краснодар

Репутация: 20
Всего: 25



Немного не понял, при выборе элемента в ComboBox должна выводиться в Label`ах или нет? Можно создать условие на ComboBox1 и все.
Код

 if (ComboBox1->Text) 
  Label5->Caption = cur_str->Strings[1];
 else 
  Label5->Caption = "";
  .........

Вроде так, не проверял.


--------------------
Я человек - попробуйте обвинить меня за это.
PM MAIL   Вверх
CrasyMen
Дата 8.5.2007, 00:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 264
Регистрация: 19.12.2006

Репутация: нет
Всего: 3



Цитата(CrasyMen @  8.5.2007,  00:03 Найти цитируемый пост)
TStringList *file_ = new TStringList;
TStringList *cur_str = new TStringList;
long i;
file_->LoadFromFile("data.txt");
for (i=0;i<file_->Count;i++)
{
cur_str->Text=StringReplace(file_->Strings[i],"\t","\n",TReplaceFlags()<<rfReplaceAll);
}
delete cur_str;
delete file_;

даже при таком коде в сомбобоксе выводится все содержимое файла. А мне надо только название (напр. "Seagate Barracuda 36ES").
если
Цитата(Klin @  8.5.2007,  00:22 Найти цитируемый пост)
  Label5->Caption = cur_str->Strings[1];

то просто продублируется (один раз в сомбобоксе и еще раз в лейбле)


--------------------
Человек просто обязан ошибаться, раз другие учатся на его ошибках.
[color=skyblue]Хочу сменить ник и сменю как только дадут такую возможность.[/color]
PM MAIL ICQ   Вверх
Klin
Дата 8.5.2007, 01:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1938
Регистрация: 7.10.2002
Где: Краснодар

Репутация: 20
Всего: 25



Возможно, индекцсацию нужно будет вести с 1, а в нулевой элемент записывается вся информация. Завтра посмотрю.


--------------------
Я человек - попробуйте обвинить меня за это.
PM MAIL   Вверх
CrasyMen
Дата 8.5.2007, 20:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 264
Регистрация: 19.12.2006

Репутация: нет
Всего: 3



Цитата(CrasyMen @  8.5.2007,  00:03 Найти цитируемый пост)
для формы на которой есть один ComboBox (в него вводим из файла название напр. "Seagate Barracuda 36ES"), остальные характеристики выводятся в Label1 - Label8. Если нечего выводить то Caption в Label должна быть пустой. В даном случае пустыми должны быть Label5 - Label8.

помогите пожалуйста. я уже совсем измотался.


--------------------
Человек просто обязан ошибаться, раз другие учатся на его ошибках.
[color=skyblue]Хочу сменить ник и сменю как только дадут такую возможность.[/color]
PM MAIL ICQ   Вверх
dumb
Дата 9.5.2007, 01:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


sceloglauxalbifacies
****


Профиль
Группа: Экс. модератор
Сообщений: 2929
Регистрация: 16.6.2006

Репутация: 32
Всего: 158



CrasyMen, прикрепи файл данных.
PM MAIL   Вверх
CrasyMen
Дата 9.5.2007, 07:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 264
Регистрация: 19.12.2006

Репутация: нет
Всего: 3



dumb,  он в первом посту


--------------------
Человек просто обязан ошибаться, раз другие учатся на его ошибках.
[color=skyblue]Хочу сменить ник и сменю как только дадут такую возможность.[/color]
PM MAIL ICQ   Вверх
dumb
Дата 9.5.2007, 16:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


sceloglauxalbifacies
****


Профиль
Группа: Экс. модератор
Сообщений: 2929
Регистрация: 16.6.2006

Репутация: 32
Всего: 158



я не слепой, однако. по твоим словам, разделителями в этом файле являются символы табуляции(\t). попробуй теперь скопировать то, что у тебя в первом посте, в файл.
PM MAIL   Вверх
CrasyMen
Дата 9.5.2007, 17:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 264
Регистрация: 19.12.2006

Репутация: нет
Всего: 3



В *.txt файле разделителялось табами. А на форуме видимо символы табуляции(\t) переделались в пробелы.
Вот файл:


Присоединённый файл ( Кол-во скачиваний: 11 )
Присоединённый файл  Harddisk.zip 0,91 Kb


--------------------
Человек просто обязан ошибаться, раз другие учатся на его ошибках.
[color=skyblue]Хочу сменить ник и сменю как только дадут такую возможность.[/color]
PM MAIL ICQ   Вверх
dumb
Дата 10.5.2007, 14:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


sceloglauxalbifacies
****


Профиль
Группа: Экс. модератор
Сообщений: 2929
Регистрация: 16.6.2006

Репутация: 32
Всего: 158



CrasyMen, держи проект-заготовка.

Присоединённый файл ( Кол-во скачиваний: 10 )
Присоединённый файл  hardparm.rar 3,40 Kb
PM MAIL   Вверх
CrasyMen
Дата 10.5.2007, 17:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 264
Регистрация: 19.12.2006

Репутация: нет
Всего: 3



dumb,  спасибо огромное!
Вы первый кому я повышу репутацию.


--------------------
Человек просто обязан ошибаться, раз другие учатся на его ошибках.
[color=skyblue]Хочу сменить ник и сменю как только дадут такую возможность.[/color]
PM MAIL ICQ   Вверх
Romikgy
Дата 10.5.2007, 17:55 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: 11
Всего: 146



Цитата(CrasyMen @  10.5.2007,  16:35 Найти цитируемый пост)
Вы первый кому я повышу репутацию. 

хех .... ибо раньше просто не мог smile


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
CrasyMen
Дата 23.5.2007, 16:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 264
Регистрация: 19.12.2006

Репутация: нет
Всего: 3



Мне надо чтобы при нажатии кнопки на одной форме появлялась вторая (которая и выводит содержимое файла в комбобокс и лейблы). Компонента  OpenDialog не надо, потому что известно расположение файла ( data/harddisk.dat ).
Это я уже сделал.
Теперь мне надо еще чтобы в комбобоксе выводились винчестера, год выпуска которых меньше текущего. Тоесть характеристика "год выпуска" (которая есть в файле данных) сравнивалась с глобальной переменной, которая обозначает текущий год. 

dumb, было бы очень хорошо если бы вы переделали свой код, потому что это не приведет к новым вопросам. Можно сделать просто 6 кнопок для назначения текущего года (2000 - 2006).

Это сообщение отредактировал(а) CrasyMen - 23.5.2007, 18:20


--------------------
Человек просто обязан ошибаться, раз другие учатся на его ошибках.
[color=skyblue]Хочу сменить ник и сменю как только дадут такую возможность.[/color]
PM MAIL ICQ   Вверх
CrasyMen
Дата 23.5.2007, 18:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 264
Регистрация: 19.12.2006

Репутация: нет
Всего: 3



Хотя, я сам уже придумал.  только скажите кто-нить как считать часть строчки между первым и вторым символом табуляции (\t).


--------------------
Человек просто обязан ошибаться, раз другие учатся на его ошибках.
[color=skyblue]Хочу сменить ник и сменю как только дадут такую возможность.[/color]
PM MAIL ICQ   Вверх
Romikgy
Дата 24.5.2007, 00:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: 11
Всего: 146



Цитата(CrasyMen @  23.5.2007,  17:38 Найти цитируемый пост)
только скажите кто-нить как считать часть строчки между первым и вторым символом табуляции (\t). 

разбиваем строку по знакам табуляции
Цитата(CrasyMen @  7.5.2007,  23:03 Найти цитируемый пост)
cur_str->Text=StringReplace(file_->Strings[i],"\t","\n",TReplaceFlags()<<rfReplaceAll);

берем подстроку между 1 табом и вторым 
Цитата(CrasyMen @  7.5.2007,  23:03 Найти цитируемый пост)
ListBox2->Items->Add(cur_str->Strings[1]);

 smile 


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
CrasyMen
Дата 24.5.2007, 07:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 264
Регистрация: 19.12.2006

Репутация: нет
Всего: 3



а если cur_str будет типа String а не TStringList, то как?


--------------------
Человек просто обязан ошибаться, раз другие учатся на его ошибках.
[color=skyblue]Хочу сменить ник и сменю как только дадут такую возможность.[/color]
PM MAIL ICQ   Вверх
Romikgy
Дата 26.5.2007, 09:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: 11
Всего: 146



Цитата(CrasyMen @  24.5.2007,  06:04 Найти цитируемый пост)
а если cur_str будет типа String а не TStringList

и на кой? делить сложнее


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
CrasyMen
Дата 17.6.2007, 17:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 264
Регистрация: 19.12.2006

Репутация: нет
Всего: 3



есть код, любезно предоставленный dumb'ом:
Код

//---------------------------------------------------------------------------
void __fastcall TFCompSel::Timer1Timer(TObject *Sender)
{
  cboxModel->Clear();
  cboxModelSelect(0);
  if (!fn.IsEmpty())
  {
    datfile = new TStringList();
    try {
      datfile->LoadFromFile(fn);
      for (int i=0; i < datfile->Count; ++i)
      {
        AnsiString s = datfile->Strings[i];
        
        cboxModel->AddItem(s.SubString(1,AnsiPos('\t',s)-1), 0);
      }
    }
    catch (Exception &E)
    {
      ShowMessage("Error " + E.Message + " while read file " + fn);
    }
  }
   Timer1->Enabled = false;

}
//---------------------------------------------------------------------------
void __fastcall TFCompSel::cboxModelSelect(TObject *Sender)
{
    Button1->Enabled = true;
    int i;
    TStringList *cur_str = new TStringList();
    try {
        cur_str->Text = StringReplace(datfile->Strings[cboxModel->ItemIndex],"\t","\n",TReplaceFlags()<<rfReplaceAll);
      for (int j=1; j < 11; ++j)
      {
        TLabel *pl = dynamic_cast<TLabel*>(FindComponent("lbl_Prm"+IntToStr(j)));
        if (pl) pl->Caption =  j < cur_str->Count ? cur_str->Strings[j] : AnsiString("");
      }
    }
    catch (Exception &E)
    {
      ShowMessage("Error " + E.Message + " while parse line: " + datfile->Strings[i]);
    }
    delete cur_str;

    TSearchRec a;
    if ( FindFirst("images\\" + cboxModel->Text + ".jpg", faAnyFile, a ) == 0 )
        Image1->Picture->LoadFromFile("images\\" + cboxModel->Text + ".jpg");
    else Image1->Picture->LoadFromFile("images\\None.jpg");
}

как сделать чтобы в cboxModel добавлялись только те строчки, в которых после первого символа табуляции (\t) следует "2000"?


--------------------
Человек просто обязан ошибаться, раз другие учатся на его ошибках.
[color=skyblue]Хочу сменить ник и сменю как только дадут такую возможность.[/color]
PM MAIL ICQ   Вверх
dumb
Дата 19.6.2007, 09:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


sceloglauxalbifacies
****


Профиль
Группа: Экс. модератор
Сообщений: 2929
Регистрация: 16.6.2006

Репутация: 32
Всего: 158



Цитата(CrasyMen @  17.6.2007,  17:14 Найти цитируемый пост)
как сделать чтобы в cboxModel добавлялись только те строчки, в которых после первого символа табуляции (\t) следует "2000"? 


Код

...
        AnsiString s = datfile->Strings[i];
        int pos = AnsiPos('\t',s);
        if (s.SubString(pos+1,4) == "2000")
          cboxModel->AddItem(s.SubString(1,pos-1), 0);
...


а вообще, если тебе нужен результат, а само программирование не "уперлось"(ибо вещи, о которых ты спрашиваешь в течение довольно длительного времени, являются элементарнейшими), то стоит создавать тему в "Центре помощи" с просьбой о модификации существующего кода.

PM MAIL   Вверх
Страницы: (2) [Все] 1 2 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.0713 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.