Elemzési oldalak c #
Továbbra fordítása a cikket elemzés vagy rángatás használó oldalak c #.
Webes osztály a térben SyStem.Net nevét, rájön megszerzésének lehetőségét adatokat az internetről. Segítségével a forráskód HTML oldalak egy sorban vagy egy fájlt.
Példa: Szerezd meg a forráskód az oldal google.com
- Add a gombot, hogy a forma és a RichTextBox
- Kattintson kétszer a gombot, az egérrel. Ezáltal hozzá egy gombnyomással esemény
- Hozzátéve, hogy ez az esemény a következő kódot:
DownLoadString módszert alkalmazzanak, hogy adja vissza az adatokat, mint egy húr, és ezt a sort a richtextbox. A művelet eredményét az alábbiak szerint:
Akkor tudod használni a reguláris kifejezések (RegEx) a kapott sort, hogy a szükséges információkat (például így gyorsan kap, amely megragadta a képek, e-mail, linkek, stb
Példa: Grubb képek
Miután megkapta az oldal kódja az előző példában, és megállapította, például minden, a kép (hogyan kell csinálni fogom leírni később) meg tudjuk menteni az összes képet a számítógépen, a következő módon:
Példa: blokkoló módban WebClient
- Adjuk hozzá a következő kódot a gomb click esemény:
- Futtatása után a projekt, és kattintson a gombra, próbálja mozgatni a forma, vagy kattintson többé űrlap elemek. Ez nem fog reagálni a tevékenységét. Forma locked végző adatolvasási művelet említett kereső oldalra
- Miért történik ez? A lényeg az, hogy a vonalak betöltése, fájl vagy egyéb adatokat az interneten lehet, hogy hosszú ideig (attól függően, hogy a kapcsolat sebessége, a szerver terhelését, stb), és a webes osztály, a mi példánkban működik a patak, amely felelős a rajz felhasználói felület (UI). Ez vezet befagyasztását formájában.
- Ez azt jelenti, hogy az áramlás nem folytatódik, hogy feldolgozza a többi, ezt követően a parancsokat a programot, amíg megkapja az összes kért adatot az interneten. Ez az úgynevezett blokkoló módban. Way - az, hogy az a nem-blokkoló módban (aszinkron
Példa: A nem-blokkoló módban WebClient
- Használja DownloadStringAsync eljárás () - amely megkezdi az adatok letöltése az internetről (ebben az esetben, mint a sorban) egy külön téma. Ez azt jelenti, hogy a kérelem nem kerül végrehajtásra, amíg az adatok párhuzamos letöltésének
- A fenti kód az adatok letöltésére egy húr, anélkül blokkolja az alkalmazást. De nem tudjuk, hogy ha az adatok teljes mértékben betölteni. Mert meg kell határozni a teljes terhelés esetén, így az alkalmazás tudja mondani a művelet végére. Ebben az esetben mi kell hozzá feldolgozás DownloadStringCompleted eseményeket.
- A következő kód indul adatokat exportálni az interneten formájában vonalak a nem-blokkoló módban, és a végén a letöltés oka DownloadStringCompleted esemény így bejelentett.
- Loaded karakterláncot továbbít érvként esemény DownloadStringAsync, és folytatni tudjuk feldolgozni a következő módon
Példa: Fájlok feltöltése a tárhely
Elemzési oldalak c #. 2. rész: A webes