![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 15.12.2006
Сообщений: 4
|
![]()
Ситуация есть файл edit1.txt в нём записаны слова через символ "&" например:
привет&hello пока&goodbye сегодня&today .....и т.д. как сделать чтобы при запуске программы т.е. при активации формы, слова из файла edit1.txt выводились в ListBox1 только до символа "&" и так каждую строку. Второе что надо: в этой де форме есть "edit1" и "button1" как сделать так чтобы, при вводе слова например "привет" делался поиск по файлу и выводилось значение которое стоит за символом "&". Выводилось например в "label1". |
![]() |
![]() |
![]() |
#2 |
Александр
Администратор
Регистрация: 28.10.2006
Сообщений: 17,655
|
![]()
берёться строка, всё что до символа в один массив, всё что после символа в другой. У тебя получаеться 2 массива и под одинаковыми номерами слова из одной строчки.
|
![]() |
![]() |
![]() |
#3 |
Забанен
Форумчанин Подтвердите свой е-майл
Регистрация: 01.11.2006
Сообщений: 420
|
![]()
s:string;
n:integer; считываешь строк s n:=pos('&',s) - позиция символа "&" в строке copy(s,1,n) - символы до "&" copy(s,n+1,length(s)-n) - символы после "&" работает если 1 символ "&".
Если ничто другое не помогает, прочтите, наконец, инструкцию! Аксиома Кана
|
![]() |
![]() |
![]() |
#4 | |
Регистрация: 15.12.2006
Сообщений: 4
|
![]() Цитата:
так а как сделать поиск по файлу чтобы он искал значиние слова до символа & и выдавал значение то которое после символа & в лабел например.... Последний раз редактировалось zetrix; 15.12.2006 в 10:48. |
|
![]() |
![]() |
![]() |
#5 |
Студент
Форумчанин
Регистрация: 10.11.2006
Сообщений: 196
|
![]()
type
TMass = array[0..1023] of string; TBookRec = record x,y: TMass; Count: integr; end; procedure ReadBook(fname: string; symb: Char; var x: TBookRec); var i: integer; f1: TextFile; buffer: string; begin AssignFile(f1,fname); Reset(f1); i:=0; repeat Readln(f1,buffer); x.x[i]:=Copy(buffer,1,Pos(''+Symb,buffer)-1); x.y[i]:=Copy(buffer,Pos(''+Symb,buffer)+1 ,Length(buffer)-Pos(''+Symb,buffer)-1); Inc(i); until Eof(f1); CloseFile(f1); x.Count:=i+1; end; function FindIt(x: TBookRec; wrd: string): string; var i,j: integer; begin j:=-1; for i:=0 to x.Count do if x.x[i]=wrd then begin j:=i; break; end; if j=-1 then Result:='Word is not found' else Result:=x.y[j]; end; P.S. На правильность работы не проверял -> надо проверить! А сам принцип, я думаю, понятен.
Visita Interiorem Terrae Rectificando Operae Lapidem...
|
![]() |
![]() |
![]() |
#6 |
Регистрация: 15.12.2006
Сообщений: 4
|
![]()
procedure TForm1.Button3Click(Sender: TObject);
var f: TextFile; // файл fName: String[80]; // имя файла i: integer; begin fName := 'Edit1.Txt'; AssignFile(f, fName); Append(f); // открыть для добавления for i:=0 to Memo1.Lines.Count do // строки нумеруются с нуля if (Length(memo1.text)=0) or (Length(memo2.text)=0) then ShowMessage('Ошибка ввода данных.' +#13+'Bce поля должны быть заполнены.') else writeln(f, Memo1.Lines[i],'&',Memo2.lines[i]); MessageDlg('Данные добавлены',mtInformation,[mbOk],0); CloseFile(f); // закрыть файл memo1.Clear; memo2.Clear; Listbox1.Refresh; end; Это код для того чтобы записывал в файл слова через знак "&" но когда добавляешь в файл получается такая фигня: Добрый день&Good Day & под&under & досвидания&Good-bye & как сделать чтобы знака "&" во второй строке не появлялось...?подскажите где косяк в коде... |
![]() |
![]() |
![]() |
#7 |
Павел Сергеевич
Форумчанин
Регистрация: 05.11.2006
Сообщений: 665
|
![]()
С паскаля пересел...
![]() writeln(f, Memo1.Lines[i]+'&'+Memo2.lines[i]);
Познавая других, мы познаем себя.
С'est la vie... |
![]() |
![]() |
![]() |
#8 |
Регистрация: 15.12.2006
Сообщений: 4
|
![]()
такая же фигня
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Считывание интов из файла | kydja | Общие вопросы C/C++ | 1 | 17.05.2008 18:16 |
Как из строки получить первые три символа | experts91 | Помощь студентам | 2 | 07.04.2008 21:58 |
удаление символа окончания строки | Xozer | SQL, базы данных | 1 | 07.02.2008 12:19 |
Считывание данных из файла | inret | Общие вопросы Delphi | 4 | 18.11.2007 18:03 |
Считывание из файла | DimkinStd | Общие вопросы Delphi | 7 | 24.01.2007 19:18 |