Pobranie zawartości pliku txt z serwera

0

Witam!
Posiadam na serwerze plik txt: "http://www.jakisadres.pl/plik.txt", w jego treści wpisana jest literka a. Jak pobrać tą zawartość z adresu url? chciałbym ją potem przyrównać w funkcji if (if zawartość = 'a' ...)

0

Indy, Synapse czy nawet URLDownloadToFile.
Poszukiwania zaczyna się od szukania na własną rękę, a nie pytania na forum!
Poza tym:
1.if nie jest funkcją.
2.*tę zawartość

0

Skorzystaj z komponentu HTTPGet http://www.utilmind.com/delphi/httpget.zip, tu masz demko:http://www.utilmind.com/delphi/exe-demo/HTTPGetDemo.exe
Komponent daje możliwość włączenia lub wyłączenia korzystania z cache'a (property UseCache). Istnieje możliwość pokazania progress-u ściąganego pliku.

0

Mam dziwny problem. Szukam w internecie i też nie widzę odpowiedzi. Nie mogę zainstalować komponentu HTTPGet, mimo iż od rana szukam rozwiązania tego problemu. Korzystam z Rad Studio XE3. Klikając na Component -> Install comonent -> wybieram HTTPGet.pas -> Następnie jako Package Name wskazuję plik Rad Studio - 10.0 - lib - win32 - release - dclusr, no i otrzymuję błąd przy kompilacji:

[dcc32 Error] HTTPGet.pas(273): E2010 Incompatible types: 'PAnsiChar' and 'PWideChar'
[dcc32 Error] HTTPGet.pas(308): E2251 Ambiguous overloaded call to 'StrPas'
  System.SysUtils.pas(10777): Related method: function StrPas(const PAnsiChar): AnsiString;
  System.SysUtils.pas(10783): Related method: function StrPas(const PWideChar): string;
[dcc32 Warning] HTTPGet.pas(308): W1057 Implicit string cast from 'AnsiString' to 'string'
[dcc32 Fatal Error] dclusr.dpk(41): F2063 Could not compile used unit 'HTTPGet.pas'
0

Jeśli kolega używa środowiska Rad Studio XE3, to powinien sobie zdawać sprawę, że komponentów (w których używa się zmiennych znakowych lub łańcuchowych) stworzonych w starszych wersjach Delphi (do Delphi 2007), nie da się (najczęściej) bez przerabiania zainstalować w środowiskach obsługujących Unicode (Delphi 2009 i nowszych).

0

JA PIE... prze. Trzeci raz dzisiaj: UWAGA! WYTĘŻAMY WZROK I SŁUCH, BO BĘDĘ SIĘ "DARŁ", BO INACZEJ NIE DOCIERA.

PYTANIA O PODSTAWY ZADAJEMY W DZIALE NEWBIE! Przenoszę po raz kolejny, bo wedlug mnie pytanie zahacza o podstawy. Temat już był tak wielokrotnie wąłkowany, że mozna pogooglowac, a samo zastosowanie rozwiązań jest również w miarę banalne. Wystarczy tylko myśleć.

Dla Synapse polecam poczytać ten artykuł, a wszystko będzie jasne: Obsługa protokołu HTTP przy użyciu pakietu Synapse . A poza tym można też jeszcze użyc modułu SimpleTcp http://piechnat.pl/article/simpletcp.html - dołaczony jest przykład. Niestety wtedy rzeźbimy trochę na gołych danych i wszystko trzeba sobie obsłużyć. Pod Delphi 7 działa to idealnie i nadaje się jak ulał do WinAPI. Nie obsługuje wprawdzie SSL, ale pytającemu chyba to niepotrzebne. Nie testowałem tego pod Lazarusem czy FPC, ale moduł korzysta z WinSock więc powinno być raczej uniwersalne.

1
olesio napisał(a)

UWAGA! WYTĘŻAMY WZROK I SŁUCH, BO BĘDĘ SIĘ "DARŁ", BO INACZEJ NIE DOCIERA.

A do kogo ma do niby docierać? Myślisz że kogokolwiek obchodzą te zasady w śliśtaśnych ramkach skoro całe forum charakteryzuje się tłumaczeniem podstaw [CIACH!]?
Popatrzmy na parę zaawansowanych tematów z działu Delphi:

  1. Problem z umiejętnością rozróżniania unitów wbudowanych od dodawanych: problem z CRT.pas we FreePascalu
  2. Problem z konstrukcją 'for': http://4programmers.net/Forum/Delphi_Pascal/142797-problem_z_zmniejszaniem_zmiennej
  3. Problem z ciągami: http://4programmers.net/Forum/Delphi_Pascal/142787-ciag_rekurencyjnie_i_iteracyjnie

Kurcze, normalnie tematy tak trudne że 99% programistów ich nie rozumie. Stąd to rozróżnienie jest sztuczne. Jeżeli znajdzie się trudne pytanie to zazwyczaj sprowadzi się to do braku odpowiedzi, lub pokazywania współużyszkodników że nie rozumieją problemu. Tutaj niestety bez przykładu bo niestety tego typu posty raczej rzadkie.
A na dodatek, moderator za każdym razem milutko przeniesie, nie ważne że np. ten temat jak tu był poruszany miliard razy. Ważne żeby kurcze to było w tym dziale w którym się moderatorowi podoba.

Lazarus to jest FPC :P

Lazarus=FPC+IDE+LCL

0

Dobrze, że doprecyzowałeś z Lazarusem. Anyway. Ja lubię względny porządek. Ale nie zawsze do konca ogarniam forum, ale teraz czytałem uważniej i uważam, że te tematy w których się ostatnio musiałem "wydzierać" (żeby piszący nie w tym dziale dojrzeli moje prośby) nadwały się do tego działu. Nie każdy musi pytać na przykład o rzeczy zahaczające o RE czy WinAPI czy cokolwiek innego niestandardowego przy pisaniu w Delphi. Ja na ogół nie ruszam też pytan o bazdy danych oparte na silnikach, bo to dla mnie wiedza nie do konca ogarnięta. Zamiast baz na ogół stosuje własne pliki typowane lub amorficzne. Raz tylko coś tam na szybko dla testów naskrobałem z SQLite. Ale na trygława, pobieranie pliku ze strony www?! Toć to było wałkowane mnóstwo razy. O czym już pisałem. Ludziom się po prostu nie chce poszukać i nie chce się chwilę samodzielnie pokobinować, bo... tak. Być wygodniej dla nich. A ja wolę pewne tematy w dziale Newbie z podforum Delphi / Pascal przenieść... bo tak. Skoro ktoś swoim postowaniem stosuje brak zasad, to ja wprowadzam jakieś zasady. Czasem może niekonsekwentnie, ale tutaj pomaga mi teraz @furious programming to ogarniać. Tak, wiem od tego, że post będzie w złym dziale świat nie przestanie istnieć, ale od tego, że będzie tam gdzie według mnie powinien - również nie. Chociaż niektórych może zmotywowało by tylko to, jak ich pytania lądowały by "z automatu" w koszu za brak tagów / złe tagi / brak wstawiania kodu w tagi / niesformatowany kod / pytania o podstawy nie w dziale Newbie. Imo E.o.O.T.

0

Nie każdy musi pytać na przykład o rzeczy zahaczające o RE czy WinAPI czy cokolwiek innego niestandardowego przy pisaniu w Delphi.

Czy to znaczy więc, że to co jest ujęte w manualu, względnie w książce od matematyki do gimbazjonu jest warte takiego 'wywyższenia' wobec innych postów?
Moim zdaniem większych podstaw niż to co jest ujęte w wielu kursach Pascala nie ma. Niestety, widać moderacja stosuje jakąś nikomu nie znaną miarkę.

Ludziom się po prostu nie chce poszukać i nie chce się chwilę samodzielnie pokobinować, bo... tak. Być wygodniej dla nich.

No i widać że moderacja ma to gdzieś.

Chociaż niektórych może zmotywowało by tylko to, jak ich pytania lądowały by "z automatu" w koszu za brak tagów / złe tagi / brak wstawiania kodu w tagi / niesformatowany kod / pytania o podstawy nie w dziale Newbie.

Pytanie czy wy chcecie zwiększenia poziomu forum, czy większej ilości początkujących. Póki co widzę że w większość stanowią tutaj osoby które nikt nie potrafią, a parędziesiąt osób które prawi 'jedyne słuszne prawdy' ma tutaj głos, przy czym zawsze mówią oni o totalnych podstawach języka który znają doskonale, bo jeszcze inaczej by się okazało, że 80% odpowiadaczy w dziale Delphi nie wie jak działa automatyczne zarządzanie tablicami dynamicznymi w Delphi (co oczywiście nie przeszkadza w odpowiadaniu i pierniczeniu głupot). A już totalną katastrofą jest dyskusja, gdzie parę 'zaawansowanych' osób nie zgadza się ze sobą, bo w końcu jest jedna prawda... Więc zazwyczaj uznaje się że większość ma rację, bo przecież nie można tutaj utworzyć z Offtopicu oddzielnego tematu. Już nie mówiąc że sprzeciw wobec moderacji powoduje że automatycznie dostaje się bana (widzieliście jedną osobę tutaj która ma działające konto i otwarcie krytykuje moderację?). No ale to temat na oddzielny temat, który i tak nie ma sensu, bo moderacja ujmie fakty tak jak im się spodoba.

Temu właśnie postulowałem, żeby były te tematy w jednym dziale ew. wybitne oznaczane jako wartościowe i by móc ewentualnie po tym parametrze szukać "zagwostek", ale nie przeszło...

Rozwiązanie zapewne więcej warte niż te działy, które są dzielone nie wiadomo jak. (A raczej według odwiecznej zasady: Tak jak się moderatorom podoba).

Edytowany 1 raz: wczoraj, 21:16 przez Furious Programming

To już widzę że nawet nie chodzi o obrazę użytkownika, tylko o jakiekolwiek słowo które się nie podoba moderacji. No chyba że to post moderacji. Proponuję dodać do badwordów/watchwordów dodać "Payl" oraz "konspiracja". I ze względów na to że "debile" to wyraz powszechnie uważany za gorszący, dodać jeszcze do badwordów "kurcze", które przecież też powoduje gorszące skojarzenia! Nie ma to jak te 'dobrze' pojęte cenzurowanie postów.

Ale starczy offtopa, bo zaraz znów okaże się że każdy ma coś do powiedzenia, ale rozmowa zostanie ucięta na dziwnym trafem moim poście, bo nie można splitować tematów.

0

@payl: znam przypadek osoby, które na moją konstruktywną krytykę na temat swojego arta odpowiedziałą pyszczeniem. I sprawdziłem teraz - osoba ta nadal ma aktywne konto. Także na pewno nikt nie usuwa kont od razu za nic. Co do poziomu forum jest jak jest.

Ja się tutaj przyzwyczaiłem do tego forum i odwiedzam je często. Pomagając tutaj ludzioim w ciągu paru lat zdobyłem wiedzę na tematy, które dla mnie były tabu. Nie miałem pojęcia o WinAPI, nie miałem pojęcia jak fajnie korzystać z HTTP, injekcja dllek i operacje na procesach też słabo ogarniałem. Nie trafiają się o to pytania za często. Jednak pomagając innym i poświęcając więcej czasu na siedzenie przed kompem kiedy miałem przerwę od regularnego chodzenia do pracy zarobkowej - uczyłem się. I wiem z doświadczenia, że jak człowiek chce to się może wielu rzeczy nauczyć. Potrzebna jest tylko determinacja.

A i tak mam jej mało, bo nadal dla mnie jedyny "słuszny język" to Object Pascal, a najczęściej używanym IDE jest Delphi 7. Nie potrzebuje znać innych jęzków, których składnia i niuanse mnie odrzucają. Poza tym mniej czasu aby wszystko ogarniać od podstaw. Tak wiem, trochę lenistwo i małe ambicje. Ale mogę z tym żyć ;) Co do userów jeszcze. To wiadomo, że nie teleportujemy się w umysły pytaczy i nie sprawimy, że zaczną pytać o konkrety, wcześniej googlując. Ja osobiście jeżeli mogę jakoś staram się pomóc w każdym problemie jaki ogarniam w postach które dotyczą Object Pascala. Nikogo nie nazywałem nigdy i nie nazwę debilem.

A nie ukrywajmy, niechęć do Ciebie większości administracji nie wzieła się bez powodów. Trochę za uszami masz. Masz na pewno wiedzę, pokazałeś to nie raz, ale i pokazywałeś niski poziom dyskusji w niektorych wątkach. Stąd za pewne te tempienie Twojej sooby. Jak wiesz nie ja tego dokonuje, nie śledziłem też i nie śledzę Twoich poczynań i historii Twoich dyskusji na forum. Ale wierz mi za nic nikt nie jest tutaj tempiony. Jako szary user uważał bym tak samo.

Podsumowując. Pomyśl, czy gdybyś był adminem jakiegoś forum to mając takiego użytkownika jak Ty sam siebie po pewnych komentarzach nie "nagrodził" byś ograniczeniem dostępu. A i mogę śię źle orientować, bo nie śledze tych forów jak elektroda czy peb non stop. Ale ruch na forum spory i pytań wiele. Z poziomem zawsze będzie różnie chyba. Ale jak patrze - na przykłąd na unit1 praktycznie nic się nie dzieje. To forum jest najpopularniejsze w Polsce. Na wspomnianych wcześniej, za pewne na elektrodzie moze są konkretne pytania, ale na drugim mamy wszystko w jednym. A wiadomo jak coś jest do wszystkiego bywa, że jest do niczego. Stąd odwalanie zadan domowych/zaliczeniowych w wielu wątkach. Tutaj jednak moderacja robi wiele żeby to ukrócić, a całe forum jakoś ogarnąć. Takie jest moje zdanie, ale na pewno znajdziesz na moje opinie mnóstwo kontrargumentów tylko po to aby je podważyć dla samego faktu, że ktoś musi być "w opozycji".

0

To już widzę że nawet nie chodzi o obrazę użytkownika, skoro całe forum charakteryzuje się tłumaczeniem podstaw debilom - nie, nie chodzi o obrazę użytkownika, tylko wszystkich użytkowników pytających o podstawy;

  1. Cytujesz to co sam cenzurujesz bez cenzury. Wychodzi więc że twoja cenzura to pic na wodę.
  2. To że używam dosadnych wyrażeń nie znaczy jeszcze że nie mam racji. Debili tutaj nie brakuje, sami wy się do nich zwracacie często tekstami z 'mojej' paczki w stylu "musisz mieć TBrain". Kryptoobrażanie jest w porządku, mówienie jak jest nie. To że jest to bez sensu chyba nie muszę mówić, bo efekt dla tych osób jest taki sam (albo wręcz gorsze jest kryptoobrażanie) a dla was to kwestia że trzeba to powiedzieć tak żeby filtr badwordów nie złapał.

znam przypadek osoby, które na moją konstruktywną krytykę na temat swojego arta odpowiedziałą pyszczeniem. I sprawdziłem teraz - osoba ta nadal ma aktywne konto. Także na pewno nikt nie usuwa kont od razu za nic.

  1. Z tego co się orientuję, ty nie możesz banować userów.
  2. Podaj nick osoby, założę się że to osoba która żadnej wiedzy nie ma, a gra chojraka. Takich to ja jem na śniadanie @.@ ... Chodziło mi o osoby które aktywne są na forum (tj. często się wypowiadają) oraz nie podoba im się polityka administracji.

Nikogo nie nazywałem nigdy i nie nazwę debilem.

Olesio, dobrze znam twoją politykę, a ty dobrze znasz moją. Ja za głupie pytania lubię karcić surowo, bo albo ktoś zmieni swoje zachowanie albo sobie pójdzie.

A nie ukrywajmy, niechęć do Ciebie większości administracji nie wzieła się bez powodów.

Nikt niczego nie ukrywa. Moderacja nie lubi mnie za granie nie tak jak im się podoba (wchodzi w to ostry styl wypowiedzi) oraz lansowanie alternatywnych dróg, które nie są oczywiste i domyślne dla większości a mają swoje zalety.

ale i pokazywałeś niski poziom dyskusji w niektorych wątkach

Nie rozumiem twojego pojęcia 'niski poziom dyskusji'. To co jest niezgodne z twoimi modelami 'wysokiego poziomu dyskusji', niekoniecznie jest 'niskim poziomem dyskusji'. Może na przykładzie sztuki współczesnej: Dla ciebie to tylko parę pacnięć pędzlem losowych, dla innych prawdziwa sztuka. Porównanie przesadzone ale oddaje myśl.

Ale wierz mi za nic nikt nie jest tutaj tempiony.

Zawsze tak jest że ten kto się nie wyróżnia nie jest tępiony (tempiony to dla gimbusów wyraz). Tak było zawsze w historii i to nie tylko tego forum.

Pomyśl, czy gdybyś był adminem jakiegoś forum to mając takiego użytkownika jak Ty sam siebie po pewnych komentarzach nie "nagrodził" byś ograniczeniem dostępu.

Ja nie ustępuję, więc raczej nie. Sam ze sobą bym nie wytrzymał. Dlatego nie nadaję się na żadną moderację. Wobec tego bez sensu jest stawianie się po drugiej stronie barykady, bo dobrze wiem że to myśl z kosmosu.

A i mogę śię źle orientować, bo nie śledze tych forów jak elektroda czy peb non stop. Ale ruch na forum spory i pytań wiele.

Ależ oczywiście, bo brakuje polskich forów zaawansowanych. Same fora na których 80% pytań to prośba o odrobienie pracy domowej.

Z poziomem zawsze będzie różnie chyba.

To zależy jaki poziom się trzyma. Obecnie tutaj wywala się już bezwzględnie pytania o pracę domową, w czym być może mam jakiś wkład. Nie zawsze tak było.

Ale jak patrze - na przykłąd na unit1 praktycznie nic się nie dzieje. To forum jest najpopularniejsze w Polsce.

Nie wiem które forum jest najpopularniejsze, bo jedyne miejsce gdzie zadaje pytania to osoby prywatne które są specami od danej sprawy i IRC FPC dla zaawansowanych pytań o ten kompilator.

Tutaj jednak moderacja robi wiele żeby to ukrócić, a całe forum jakoś ogarnąć.

Również to widzę, ale moim zdaniem wciąż brakuje poważnego rozróżnienia na pytania poważne i niepoważne. Gdyby zwiększyć ten podział to nie było by sytuacji gdzie pytanie o konstrukcję 'for' ląduje w tym samym forum co pytanie Olesia o Dll Injection na Lazarusie x64.

Takie jest moje zdanie, ale na pewno znajdziesz na moje opinie mnóstwo kontrargumentów tylko po to aby je podważyć dla samego faktu, że ktoś musi być "w opozycji".

Ależ oczywiście, ja również doskonale rozumiem twoje podejście. Doskonale wiem że gdyby tylko moje poglądy były brane pod uwagę to nic by z tego nie było (dlatego m.in. nie nadaję się na moderację).
Problem na tym forum jest taki że nie istnieje praktycznie opozycja administracji, gdyż jest ona tępiona.

Żeby powstrzymać monka od radosnego usuwania moich myśli, trzeba dodać zasłonę dymną: Kod pobierający dane w Synapse, napisałem kiedyś na potrzeby cheatu do gry.

function DownloadFile(s:ansistring):TMemoryStream;
var
  http:THTTPSend;
begin
  result:=TMemoryStream.Create;
  http:=THTTPSend.Create;
  if not http.HTTPMethod('GET',s) then raise exception.Create('DownloadFile Failed');
  http.Document.SaveToStream(result);
  http.Free;
end; 

Nie, kod nie jest exception-proof tak jak lansujecie to, gdyż wyjątków używam tylko do zgłaszania krytycznych problemów.

0

Ok @payl: doprecyzuję. Przez niski poziom dyskusji miałem na myśli, że komuś - za pewne w niejednym temacie, ale teraz szukać nie będę, bo nie "walczę" z Tobą, ponieważ nie mam takich uprawnień, a i aspiracji. wprost nawrzucałeś, że jest debilem. To według mnie trochę niebardzo. Natomiast widze, przy cytowaniu mnie, że niejasno napisałem i zabrzmiało tak jakby forum unit1 było najpopularniejsze. Źle się wyraziłem, ponieważ według mnie to 4p jest najpopularniejsze, a na u1 praktycznie nic się już nie dzieje. A i na końcu podałeś też kod gotowego rozwiązania, także chyba z czasem i Ty łagodniejesz i litujesz się nad ludźmi, co mają wadliwą wersję lub nie używają TBrain ;)

1 użytkowników online, w tym zalogowanych: 0, gości: 1