![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
![]() Вообщем пишу бота, когда приходит запрос он должен из файла найти данную строку и отправить ее адресату, знак разделителя ; (пример: Вопрос1;Ответ1).Заранее спасибо!
|
#2
|
|||
|
|||
![]() Из вопроса непонятно, в чем у вас затруднения: вы не знаете как найти строку в файле? или как ее разделить? или как отправить ответ?
|
#3
|
|||
|
|||
![]() на самом деле у меня с файлами вообще труба, ничего мне не понятно,вообще ничего написать не могу
|
#4
|
|||
|
|||
![]() Если файл текстовый и вам его нужно только читать, то можно его просто загрузить в TStringList и работать со списком строк:
Код:
var StrList: TStringList; begin StrList := TStringList.Create; StrList.LoadFromFile(<имя_файла>); { Дальше работаете со строками файла. К ним можно обращаться по индексу: StrList[0], StrList[1] или же StrList[i] и т.п.} ... { В конце освобождаете объект списка } StrList.Free; end; |
#5
|
|||
|
|||
![]() Разделить строку по точке с запятой можно так:
Код:
function DivStr(const SourceStr: String; var SubStr1, SubStr2: String): Boolean; var i: Integer; begin i := Pos(';', SourceStr); if i <> 0 then begin SubStr1 := Copy(SourceStr, 1, i - 1); SubStr2 := Copy(SourceStr, i + 1, Length(SourceStr) - i); end; Result := i <> 0; end; |
#6
|
|||
|
|||
![]() А почему строку не с нулевого символа копируете, а с 1?
Вот здесь: SubStr1 := Copy(SourceStr, 1, i - 1); |