tiedostojen käsittely C-kielellä

Pitäisi tehdä ohjelma, joka etsii
tekstitiedostosta URLit ja tulostaa ne toiseen
tiedostoon rivinumeroineen. Lähinnä mulla on nyt
hukassa tuo URLien etsiminen tai oikeestaan koko
juttu :) .. ja pitäsi olla tiukkaa ANSI C:tä.
kiitos etukäteen :)
3376
Äänestä

Muut lukivat myös

Vastaukset 3

Vanhimmat

Miten tekstitiedostostasi tunnistetaan URLit?
Onko tiedoston teksti vaapaamuotoista ja onko
URLit sellaisenaan tekstin joukossa
vaiko "merkitty" jollain tavoin?

URLien luotettava tunnistaminen tekstistä voi
olla hyvinkin hankalaa, koska ja jos niiden muoto
voi vaihdella. Jos URLeissasi on protokollaosuus
mukana (esim. "http"), voit yksinkertaisesti
hakea riveiltä "://"-erotinta esim. strstr()-
funktiolla. Tämä ei ehkä yksinään riitä
ja "löydetyn" URLin muotoa voi joutua
varmistelemaan muillakin tavoin.

Jos protokolla ei ole mukana ja tekstisi on
vaapaamuotoista, aiheesta voisi vaikka kirjoittaa
kirjan tai kaksi..

Äänestä
  • Teksti on vapaamuotoista, mutta helpottavana
    tekijänä on se, että pitää löytää vain http:llä
    alkavat urlit. en saanut strstr-funktiolla
    ohjelmaa toimimaan, voisitko antaa vinkkejä
    funktion toteutuksesta? kiitos!

    Tytti

    Äänestä

  • Tytti kirjoitti:

    Teksti on vapaamuotoista, mutta helpottavana
    tekijänä on se, että pitää löytää vain http:llä
    alkavat urlit. en saanut strstr-funktiolla
    ohjelmaa toimimaan, voisitko antaa vinkkejä
    funktion toteutuksesta? kiitos!

    Tytti

    Mitäs ihmeellistä tuossa?!
    Vaikkapa tähän tapaan:


    #include <string.h>
    #include <malloc.h>
    :
    :
    char *http, *rivi =
    malloc(MAX_RIVI_PLUS1 * sizeof(char));
    :
    :
    if (fgets(rivi, MAX_RIVI_PLUS1, textiFile)
    != NULL)
    {
    /*Tektirivi luettu OK*/
    http = strstr(rivi, "http://");
    if (http != NULL)
    {
    /*URL löytyi.. Mahdollisesti*/
    :
    /*Etsitään URLn loppu..*/
    :

    Koodissasi on ehkä varauduttava URLn jatkumiseen
    seuraavalle riville (joudut yhdistämään kaksi tai
    useamman rivin) ja että rivillä saattaa olla
    useampi kuin yksi URL. Auttoiko?

    Äänestä

Kommentoi aloitusta


Tytti kirjoitti:

Pitäisi tehdä ohjelma, joka etsii
tekstitiedostosta URLit ja tulostaa ne toiseen
tiedostoon rivinumeroineen. Lähinnä mulla on nyt
hukassa tuo URLien etsiminen tai oikeestaan koko
juttu :) .. ja pitäsi olla tiukkaa ANSI C:tä.
kiitos etukäteen :)

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu