Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: VB.NET: Käyttäjänhallinta ohjelma

Sivun loppuun

miiro [16.04.2004 19:04:09]

#

Tarkoitu olisi tehdä sellainen ohjelma, joka katsoo tällaisesta listasta tietoja:

tieto1,tieto2,tieto3,tieto4,tieto5
...

Ja sitten syöttää ne formille joka syöttää ne batille joka luo esim. tunnukset. Noita tietorivejä on paljon, eli:

tieto1,tieto2,tieto3,tieto4,tieto5
pälä,pölö,kölö,kälä,sälä
blaa,bloo,blii,bluu,blee
jne...

Se looppaisi tuota em. juttua kunnes lista loppuisi. Onko mahdollista? jos on, pistäisittekös esimerkkikoodia...?

miiro [16.04.2004 20:15:01]

#

pöh. hirveesti typoja eikä tota pysty enää muokkaamaan...no mutta kuitenkin... Tuosta alemmasta: Siis?

peki [16.04.2004 20:26:52]

#

VB kutosella:

dim Free as integer
Free = FreeFile()
Dim taul(999) as String
' tiedostossa voi olla 999 riviä
dim i as integer
Open "tiedosto.dat" For Input As Free
    Do Until EOF(Free)
        i += 1
        Line Input Free, taul(i)
    Loop
close Free

Nyt taul -taulukko sisältää koko tiedoston.
Nyt vain left tai mid käskyillä erottelet raakadatasta tiedot(pilkulla erotellut). Eli katsot missä on pilkku ja nappaat rivistä sihen asti. Katsot missä seuraava ja taas nappaat siihen asti ja niin edelleen.
En voi tästä esimerkkiä laittaa, sillä käytän itse VB .NET:iä, eivätkä sen käskyt kunnolla toimi VB kutosessa.

miiro [16.04.2004 20:29:41]

#

tota oon vähän tyhmä eli voisko joku tehä tosta ninku selvemmän version en tajuu tosta mitään...

peki [16.04.2004 20:36:19]

#

Mäpä selitän.
rivi 1) Varataan Free muuttuja(tänne tallennetaan vapaan tiedostokahvan numero)
rivi 2) Haetaan vapaa tiedotokahva
rivi 3) Varataan taulukko, johon rivit tallennetaan
rivi 4) kommentti
rivi 5) varataan countteri, joka kertoo mihin taulukon indeksiin viitataan
rivi 6) Avataan tiedosto "tiedosto.dat" lukemista varten, käytetään Free muuttujaa kahvana
rivi 7) Kelataan tiedostoa loppumerkkiin saakka(EOF = EndOfFile)
rivi 7) kasvatetaan countteria yhdellä, jotta se viittaisi oikeaan indeksiin
rivi 8) ladataan rivi tiedotosta taulukkoon
rivi 9) Loop sulkee Do käskyn
rivi 10) Suljetaan tiedosto

Edit: Et sä oo tyhmä. Ei kukaan tajua "vasta-alkajana" tuollaista.
Kukaan, joka ohjelmoi, ei voi olla tyhmä.

hunajavohveli [16.04.2004 21:48:41]

#

Ei viitsitä edes käyttää sanaa "tyhmä". On silti totta, ettei kaikilla looginen ajattelu kehity yhtä hyvin. Mutta ei tässä ole siitäkään kysymys. Tuo pitää vain tietää, ei sitä voi päätellä.

Blaze [17.04.2004 16:33:11]

#

peki kirjoitti:

Nyt vain left tai mid käskyillä erottelet raakadatasta tiedot(pilkulla erotellut). Eli katsot missä on pilkku ja nappaat rivistä sihen asti. Katsot missä seuraava ja taas nappaat siihen asti ja niin edelleen.

Helpommallakin pääsee; Split-funktio tekee tuon suoraan.

Dim Teksti As String, Taulukko() As String

Teksti = "yks,kaks,kol,nel,viis,kuus,seittemän,kaheksan,yheksän,kymmenen"
Taulukko = Split(Teksti, ",", -1)
'Taulukko(0) = "yks"
'Taulukko(1) = "kaks" jne.

hunajavohveli [17.04.2004 16:42:59]

#

Ja onko tuossa "listassa" nyt varmasti kyse tiedostosta, vai jostain formille pistämästäsi ListBoxista?

sooda [17.04.2004 16:45:14]

#

blaze, vieläki helpommalla: taulukko=array("yks,­kaks,­kol,­nel,­viis,­kuus,­seit­te­män,­ka­hek­san,y­hek­sän,­kym­menen") :)

Blaze [17.04.2004 18:05:42]

#

Kas, aina oppii jotain uutta. No, käyköön tuo omani esimerkkinä siitä, miten voi tehdä, jos erotinmerkki on joku muu, kuin pilkku.

miiro [18.04.2004 14:29:18]

#

Listan olisi tarkoitus olla tiedosto, ja sen jälkeen ohjelman pitäisi vielä suorittaa bat (no sen kyllä osaan) ja syöttää rivi kerrallaan batille siis:

Alkup. lista:

yy,kaa,koo,nee,vii,kuu
11,22,33,44,55,66

HUOM: OHJELMAN MUISTISSA oleva lista:

'1  2   3   4   5   6)
yy kaa koo nee vii kuu
11 22 33 44 55 66

ja batille:

Shell "bat.bat" & 1 & " " & 2 & " " & 3 & " " & 4 & " " & 5 & " " & 6

(1=%1) (2=%2) jne...
silloinhan olisi 6 parametria, batti olisi esimerkiksi tällainen:

echo eka parametri: %1
echo toka parametri: %2
echo kolmas parametri: %3
echo neljäs parametri: %4
echo viides parametri: %5
echo kuudes parametri: %6

Ehkä nyt ymmärrätte minua paremmin (en nimittäin ymmärtänyt hirveästi että mitkä kohdat leikkaan ja liimaan yhteen...)


Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta