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

Вниз

Чтение файла, Pos(x,y,z)   Найти похожие ветки 

 
Ragazor   (2004-08-20 20:24) [0]

Делаю так (лишнее вытер)

procedure TForm1.Button1Click(Sender: TObject);
var f:TEXTFILE; news,all:ansistring;
begin
Filen:=GetcurrentDir+"\11111.htm";
Assignfile(f,fileN);
Reset(f);
while not EOF(f) do begin
readln(f,S);
all:=all+s;
end;
closefile(f);
c1:=POS("<TD bgColor=#efefef colSpan=2>",all);
c2:=POS("<BR></FONT></TD></TR></TBODY></TABLE>",all)+30;
news:=copy(all,c1,length(all)-c2-c1);
memo1.Lines.Add(news); - и в итоге пустая переменная news
end;

Коорче идея такая, процедура должна считать весь файл в одну строку, потом найти 2 куска текста через POS. Куски это начало и конец того что я хочу вырезать из файла.Определяется позиция начала и конца вырезания, потом через СОРУ вырезаца должно - а не хочет.

В чем ошибка, помогите разобраться.


 
Sergey Kaminski ©   (2004-08-20 22:57) [1]

А посмотреть в отладчике значения c1,c2?

Кроме того, лучше файл закачать в TStrings:


var
 AStrings: TStrings;
...
 AStrings := TStringList.Create;
 try
   AStrings.LoadFromFile (AFileName);
   c1 := Pos (Pattern1,AStrings.Text);
   c2 := Pos (Pattern1,AStrings.Text);
   if (c1<>0) and (c2<>0) then
     ....
   else
     ...
 finally
   AString.Free;
 end;
...

ну, в таком духе и легче разобраЦЦа


 
Ragazor   (2004-08-20 23:26) [2]

с1 с2 нормальные числа все находит что нада.

все разобрался, математику плохо учил...эххх
Копирует отлично!


 
Ragazor   (2004-08-20 23:28) [3]

насчет Тстрингс: мне очень важно весь файлик в строку запихать.
а с ним чуть больще писанины.


 
Fay ©   (2004-08-20 23:29) [4]

Мне ваще сегодня лениво за тебя что-либо писать, но GetcurrentDir - это ужасно. УЖАСНО.
Понятно?


 
Sergey Kaminski ©   (2004-08-20 23:57) [5]

>>очень важно весь файлик в строку запихать.

свойство Text как раз и есть одна строка.

>> а с ним чуть больще писанины.

ну это кому как

А уж насчет GetCurrentDir"а это таки да... Привыкать нужно к такому
ExtractFilePath(ParamStr(0))+"1111.html";

или "чуть больше писанины"? ;)


 
KADAN ©   (2004-08-21 03:09) [6]


> А уж насчет GetCurrentDir"а это таки да... Привыкать нужно
> к такому
> ExtractFilePath(ParamStr(0))+"1111.html";

или просто Filen:="11111.html"


 
Ragazor   (2004-08-22 00:27) [7]

А почему GetcurrentDir ужаснее
ExtractFilePath(ParamStr(0)) ???


 
PVOzerski ©   (2004-08-24 11:07) [8]

GetcurrentDir и ExtractFilePath(ParamStr(0)) могут вообще разные директории вернуть, ведь текущей директорией для приложения вовсе не обязана быть та, в которой находится его исполняемый файл. Так что автору виднее. Плохо лишь то, что если текущим каталогом окажется корневой, при таком подходе бэкслэш "сдвоится".



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

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

Наверх





Память: 0.46 MB
Время: 0.033 c
1-1092842718
Relaxxx
2004-08-18 19:25
2004.09.05
Зависит ли скорость экспорта в Excel c Delphi от версии оффиса


6-1088176360
Сергей Г
2004-06-25 19:12
2004.09.05
E-Mail адрес


11-1080469224
Boguslaw
2004-03-28 14:20
2004.09.05
KOL as fast as vcl ?


14-1092756826
ghg
2004-08-17 19:33
2004.09.05
русские комментарии в программе


11-1080427828
Deimos
2004-03-28 01:50
2004.09.05
KOL + TASM = ???





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский