Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 21.04.2013, 20:11
ghetto ghetto вне форума
Прохожий
 
Регистрация: 13.01.2013
Сообщения: 40
Репутация: -621
По умолчанию чтение из файла

привет всем
возникла такая проблема:
например такой текст:
lon="54.897645"

думал так:
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
p:integer;
e:integer;
s:string;
a:textfile;

begin
assignfile(a,'D:\test.gpx');
reset(a);
while not EOF(a) do
begin
readln(a,s);
if Pos('lon="', s) > 0 then
begin
read(a,p);

end;
end;
end;
end.
нужно считать в переменную цифры в ковычках
помогите плиз

Последний раз редактировалось ghetto, 21.04.2013 в 20:24.
Ответить с цитированием
  #2  
Старый 21.04.2013, 20:39
Аватар для Bargest
Bargest Bargest вне форума
Профессионал
 
Регистрация: 19.10.2010
Адрес: Москва
Сообщения: 2,390
Версия Delphi: XE3/VS12/FASM
Репутация: 14665
По умолчанию

Читаешь строку, через pos находишь кавычки и конвертируешь через val.
__________________
jmp $ ; Happy End!
The Cake Is A Lie.
Ответить с цитированием
  #3  
Старый 21.04.2013, 21:07
ghetto ghetto вне форума
Прохожий
 
Регистрация: 13.01.2013
Сообщения: 40
Репутация: -621
По умолчанию

можешь пример написать я не пойму как конвертировать
Ответить с цитированием
  #4  
Старый 21.04.2013, 23:24
Аватар для Alegun
Alegun Alegun вне форума
LMD-DML
 
Регистрация: 12.07.2009
Адрес: Богородское
Сообщения: 3,025
Версия Delphi: D7E
Репутация: 1834
По умолчанию

Цитата:
Сообщение от ghetto
можешь пример написать...
Примерно так
Код:
...

assignfile(a,'D:\test.gpx');
reset(a);
while not EOF(a) do
begin
readln(a,s);
if Pos('lon="', s) > 0 then
begin
SetLength(s, Length(s)-1);
s:= Copy(s, 6, Length(s));
end;

...

Последний раз редактировалось Alegun, 21.04.2013 в 23:46.
Ответить с цитированием
  #5  
Старый 22.04.2013, 06:43
ghetto ghetto вне форума
Прохожий
 
Регистрация: 13.01.2013
Сообщения: 40
Репутация: -621
По умолчанию

спасибо большое
Ответить с цитированием
  #6  
Старый 22.04.2013, 07:26
ghetto ghetto вне форума
Прохожий
 
Регистрация: 13.01.2013
Сообщения: 40
Репутация: -621
По умолчанию

а как если не знаешь какой по счету символ?
Ответить с цитированием
  #7  
Старый 22.04.2013, 07:33
Аватар для Alegun
Alegun Alegun вне форума
LMD-DML
 
Регистрация: 12.07.2009
Адрес: Богородское
Сообщения: 3,025
Версия Delphi: D7E
Репутация: 1834
По умолчанию

Цитата:
Сообщение от ghetto
а как если не знаешь какой по счету символ?
Код:
...
s:= Copy(s, pos('="', s)+2, Length(s));
...
Ответить с цитированием
Этот пользователь сказал Спасибо Alegun за это полезное сообщение:
ghetto (22.04.2013)
  #8  
Старый 22.04.2013, 14:57
ghetto ghetto вне форума
Прохожий
 
Регистрация: 13.01.2013
Сообщения: 40
Репутация: -621
По умолчанию

вот пример:
<trkpt lat="52.483373880386353" lon="85.151697993278503">
нужно считать (52.483373880386353) но после и до может быть n количество символов
как тогда?
Ответить с цитированием
  #9  
Старый 22.04.2013, 15:00
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

РегЭкспы
Ссылка на книгу в подписи.
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
  #10  
Старый 22.04.2013, 15:17
ghetto ghetto вне форума
Прохожий
 
Регистрация: 13.01.2013
Сообщения: 40
Репутация: -621
По умолчанию

вы дайте мне пожалуйста пример
мне очень срочно надо!!
Ответить с цитированием
  #11  
Старый 22.04.2013, 15:29
Black Raider Black Raider вне форума
Местный
 
Регистрация: 31.05.2010
Адрес: Москва
Сообщения: 466
Версия Delphi: 7
Репутация: 40
По умолчанию

Код:
 s:= Copy(s, pos('lat="', s)+5, pos('"',copy(s, pos('lat="', s)+5,length(s)))-1);
__________________
Новый вирус - "БОМЖ"! Он просто роется в Корзине...и спит под ярлычком "Сетевое окружение"
Ответить с цитированием
Этот пользователь сказал Спасибо Black Raider за это полезное сообщение:
ghetto (22.04.2013)
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 18:16.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter