Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Citanje odredjene grupe stavki iz INI fajla, stream ili kako???

[es] :: .NET :: Citanje odredjene grupe stavki iz INI fajla, stream ili kako???

[ Pregleda: 4134 | Odgovora: 19 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

borcha
Boris Bokan
;-(
Novi Sad

Član broj: 148976
Poruke: 419
*.dynamic.isp.telekom.rs.



+3 Profil

icon Citanje odredjene grupe stavki iz INI fajla, stream ili kako???19.09.2010. u 11:07 - pre 164 meseci
Pokusavam od jutros da iscitam samo odredjeni broj stavki i to od odredjene grupe..
Koristim StreamReader sa metodom Split('=') i met. ReadLine().....

recimo...

[GRUPA0]
stavka_1 = Vrednost
stavka_2 = Vrednost
stavka_3= Vrednost

[grupa1]
stavka_1 = Vrednost
stavka_2 = Vrednost
stavka_3= Vrednost

[GRUPA2]
stavka_1 = Vrednost
stavka_2 = Vrednost
stavka_3= Vrednost


recimo ja hocu da izlistam samo [GRUPA1] u ComboListu...


hvala unapred.....
 
Odgovor na temu

Shadowed
Vojvodina

Član broj: 649
Poruke: 12846



+4783 Profil

icon Re: Citanje odredjene grupe stavki iz INI fajla, stream ili kako???19.09.2010. u 12:16 - pre 164 meseci
Citas liniju po liniju i proveravas da li je jednako "[grupa2]", ako nije, ignorises, ako jeste, od sledeceg reda pamtis linije sve dok ne naidjes na praznu. Tada si zavrsio i to sto si popamtio ubacujes u ComboBox.
 
Odgovor na temu

borcha
Boris Bokan
;-(
Novi Sad

Član broj: 148976
Poruke: 419
*.dynamic.isp.telekom.rs.



+3 Profil

icon Re: Citanje odredjene grupe stavki iz INI fajla, stream ili kako???19.09.2010. u 12:39 - pre 164 meseci
To i pokusavama svo vreme...
Ali nikako da napravim brojac ili petlju kako bih nastavio dalje od stvake _1.
Znaci dodje do [GRUPA1] i iscita naredni red tj. Stavka_1 ali nece dalje. To je i problem!!!
Molio bih te za jedan primer ako mozes??

hvala!!
 
Odgovor na temu

lonelyrider_44
Zrenjanin

Član broj: 42310
Poruke: 445
*.com
Via: [es] mailing liste



+20 Profil

icon Re: Citanje odredjene grupe stavki iz INI fajla, stream ili kako???19.09.2010. u 13:29 - pre 164 meseci
Da li imash uvek isti broj stavki pod svakom grupom, ili konkretno grupom
1 ?
 
Odgovor na temu

borcha
Boris Bokan
;-(
Novi Sad

Član broj: 148976
Poruke: 419
*.dynamic.isp.telekom.rs.



+3 Profil

icon Re: Citanje odredjene grupe stavki iz INI fajla, stream ili kako???19.09.2010. u 14:13 - pre 164 meseci
samo jednu stavku pod [GRUP1] i to prva

STAVKA_1..

a problem je sto nece dalje da ide nego se zavrsi na STAVKA1 po tom grupom. Ja zelim sve stavke pod [GRUPA1]..

;-)
 
Odgovor na temu

lonelyrider_44
Zrenjanin

Član broj: 42310
Poruke: 445
*.com
Via: [es] mailing liste



+20 Profil

icon Re: Citanje odredjene grupe stavki iz INI fajla, stream ili kako???19.09.2010. u 16:38 - pre 164 meseci
Dobro, kod bi izgledao ovako, otprilike:
Code (csharp):

string stavkaVrednost="";
void readFile(){
     Stream s = File.OpenRead("grupe.ini");
         StreamReader sr = new StreamReader(s);
         while (!sr.EndOfStream)
         {
            if (sr.ReadLine() == "[Grupa1]")
            {
                 stavkaVrednost = sr.ReadLine();
            }
         }
}
 


Ovim kodom u string stavkaVrednost upisujesh sledecu liniju, ispod linije
u kojoj pishe Grupa1 . Zato sam te pitao koliko imash stavki u toj grupi.
Ako ochekujesh da moze da bude promenljiv broj, onda ovaj kod nece raditi.
Ako ce uvek biti fixno jedna stavka, onda moze i ovako.
 
Odgovor na temu

borcha
Boris Bokan
;-(
Novi Sad

Član broj: 148976
Poruke: 419
*.dynamic.isp.telekom.rs.



+3 Profil

icon Re: Citanje odredjene grupe stavki iz INI fajla, stream ili kako???19.09.2010. u 16:47 - pre 164 meseci
Upravo tako izgleda i moj kod....
ponovi cu .. ja sam uspeo da izvucem jednu stavku i da je podelim sa ('=') ali meni trebaju i ostale stavke...!! znaci promenjivo!
 
Odgovor na temu

borcha
Boris Bokan
;-(
Novi Sad

Član broj: 148976
Poruke: 419
*.dynamic.isp.telekom.rs.



+3 Profil

icon Re: Citanje odredjene grupe stavki iz INI fajla, stream ili kako???19.09.2010. u 16:58 - pre 164 meseci
File.ini
[ADVERTIZE]
ROW_0=
ROW_1=
ROW_2=
ROW_3=
ROW_4=
ROW_5=
[DEPARTMENTS]
DESCRIPTION_1=Sank
DESCRIPTION_2=Kuhiwa
DESCRIPTION_3=
DESCRIPTION_4=
DESCRIPTION_5=
DESCRIPTION_6=
DESCRIPTION_7=
DESCRIPTION_8=
DESCRIPTION_9=
DESCRIPTION_10=

__
Znaci treba mi sve pod sekcijom [DEPARTMENTS] i sve stavke koje joj pripadaju tj 10 komada. DESCRIPTION_1=Sank, DESCRIPTION_2=Kuhiwa itd...
__
Code:

public void CitanjeOdeljenjaIzINIFil()
        {


            ListaGrupa_comboBox.Items.Clear();

            String BLUCOMINI = @"c:\BluComXMR\BlucomINI.ini";

            

            Stream s = File.OpenRead(BLUCOMINI);
            StreamReader sr = new StreamReader(s);

           
            while (!sr.EndOfStream)
            {

                

                if (sr.ReadLine() == "[DEPARTMENTS]")
                {   
                    string[] stavkaVrednost = sr.ReadLine().Split('=');
                   
                    ListaGrupa_comboBox.Items.Add(stavkaVrednost[1]);
                }

            }

 
Odgovor na temu

lonelyrider_44
Zrenjanin

Član broj: 42310
Poruke: 445
109.94.104.*



+20 Profil

icon Re: Citanje odredjene grupe stavki iz INI fajla, stream ili kako???19.09.2010. u 16:59 - pre 164 meseci
Ochekivao sam da cesh odgovoriti direktno ima toliko i toliko, ili da je promenljiv broj u pitanju, pa zato chim sam u mail-u video pochetak tvog posta, nisam dalje gledao.

Code (csharp):

string stavkaVrednost="";
void readFile(){
     Stream s = File.OpenRead("grupe.ini");
         StreamReader sr = new StreamReader(s);
         while (!sr.EndOfStream)
         {
            if (sr.ReadLine() == "[Grupa1]")
            {
                while((stavkaVrednost = sr.ReadLine())!=""){
                    //ovde kod za splitovanje i ubacivanje u combo ili shta ti vec treba
                }
            }
         }
}

 
 
Odgovor na temu

borcha
Boris Bokan
;-(
Novi Sad

Član broj: 148976
Poruke: 419
*.dynamic.isp.telekom.rs.



+3 Profil

icon Re: Citanje odredjene grupe stavki iz INI fajla, stream ili kako???19.09.2010. u 17:03 - pre 164 meseci
Znaci samo ugnjezdjivanje WHILE(){} ???
 
Odgovor na temu

lonelyrider_44
Zrenjanin

Član broj: 42310
Poruke: 445
109.94.104.*



+20 Profil

icon Re: Citanje odredjene grupe stavki iz INI fajla, stream ili kako???19.09.2010. u 17:11 - pre 164 meseci
Da. Chitaj sve dok ne dodjesh do prazne linije (jer si takav primer naveo na pochetku) ili dok ne dodjesh do sledece grupe (jer si takav primer stavio u pretposlednjem postu), znachi samo uslov varira u zavisnosti da li imash praznu liniju izmedju tih grupa. ako nemash, onda je uslov za taj while da prochitana linija bude razlichita od [sledeca_grupa] .
 
Odgovor na temu

borcha
Boris Bokan
;-(
Novi Sad

Član broj: 148976
Poruke: 419
*.dynamic.isp.telekom.rs.



+3 Profil

icon Re: Citanje odredjene grupe stavki iz INI fajla, stream ili kako???19.09.2010. u 18:31 - pre 164 meseci
Kod ne funkcionise!! Daljim prolaskom pokazuje da ima null vrednost!
Ok , nema veze ... valjda ce mi pasti neka ideja pasti na pamet!! ;-)
 
Odgovor na temu

lonelyrider_44
Zrenjanin

Član broj: 42310
Poruke: 445
109.94.104.*



+20 Profil

icon Re: Citanje odredjene grupe stavki iz INI fajla, stream ili kako???19.09.2010. u 19:03 - pre 164 meseci
Pa ne moze tako...Ko ima null vrednost ? U kojoj liniji koda ? Jako si neprecizan. Sad sam probao, kod radi!! Zavisi koji test primer mu pustish.

Evo ti primer ovog koda, podesi samo putanju do fajla: "primer.ini" i probaj. Ako taj ini fajl treba drugachije da izgleda, okachi tu drugu verziju, i takodje reci gde "puca" tvoj program. Po mogucstvu, okachi ceo kod.

program
 
Odgovor na temu

borcha
Boris Bokan
;-(
Novi Sad

Član broj: 148976
Poruke: 419
*.dynamic.isp.telekom.rs.



+3 Profil

icon Re: Citanje odredjene grupe stavki iz INI fajla, stream ili kako???19.09.2010. u 19:31 - pre 164 meseci
Ok, ok. Znam da ne moze tako!! Sory.. Malo me ovo nervira pa zurim sa.... Probacu , probacu.. a tebi hvala na strpljenju!!!
 
Odgovor na temu

bojan21
Bojan Zukic
Beograd

Član broj: 101113
Poruke: 251
92.244.151.*



+6 Profil

icon Re: Citanje odredjene grupe stavki iz INI fajla, stream ili kako???19.09.2010. u 19:41 - pre 164 meseci
Napisao sam na brzinu, probao sam samo na jednom primeru:

Code (csharp):


        //filePath = putanja do INI datoteke
        //section = sekcija koju hoces da procitas
        private string[] ReadData(string filePath, string section)
        {
           
            List<string> result = new List<string>();

            StreamReader sR = new StreamReader(filePath);

            string sectionName = "[" + section + "]";

            bool dataRead = false;
            bool readStart = false;


            while (!sR.EndOfStream && !dataRead)
            {
                string line = sR.ReadLine();

                if (readStart)
                {
                    if (line != "")
                        result.Add(line);
                    else
                        dataRead = true;
                }
                else
                {
                    if (line == sectionName)
                        readStart = true;
                }
                 
            }

            sR.Close();

            return result.ToArray();
        }



        //na primer, ispis procitanih vrednosti u ListBox
        private void button1_Click(object sender, EventArgs e)
        {
            string[] lines = ReadData("C:\\test.ini", "MY_SECTION");

            foreach (string line in lines)
            {
                listBox1.Items.Add(line.Split('=')[1]);
            }
        }
 


Pozdrav
 
Odgovor na temu

borcha
Boris Bokan
;-(
Novi Sad

Član broj: 148976
Poruke: 419
*.dynamic.isp.telekom.rs.



+3 Profil

icon Re: Citanje odredjene grupe stavki iz INI fajla, stream ili kako???19.09.2010. u 19:51 - pre 164 meseci
Sve je to odlicno!! I meni je kod isti !! Tvoj radi zato sto koristis drugi fajl!! Kod mene se ponavljaju kljucevi i vrednosti..
Evo izlistaj .INI pa ces videti ako je nesto u fajlu problem..(CRVENIM). Ja stvarno sa INI nisam bas radio pa zato malo, hm... vise sam za XML.
I postoji rastojanje izmedju dve grupe!!!


BLUCOM]
VERSION=EUEIOBBB210979
[HEADER]
ROW_0=Pizzeria caffe 00
ROW_1=ANGOLO 00
ROW_2=021/727-059 00
ROW_3=ul. Ise Sekickog 44a 00
ROW_4=00
ROW_5=00
[ADVERTIZE]
ROW_0=
ROW_1=
ROW_2=
ROW_3=
ROW_4=
ROW_5=
[DEPARTMENTS]
DESCRIPTION_1=Sank
DESCRIPTION_2=Kuhiwa
DESCRIPTION_3=
DESCRIPTION_4=
DESCRIPTION_5=
DESCRIPTION_6=
DESCRIPTION_7=
DESCRIPTION_8=
DESCRIPTION_9=
DESCRIPTION_10=

[OPERATORS]
CODE_1=1
NAME_1=Velibor
CODE_2=2
NAME_2=Olga
CODE_3=3
NAME_3=Boris
CODE_4=4
NAME_4=
CODE_5=5
NAME_5=
CODE_6=6
NAME_6=
CODE_7=7
NAME_7=
CODE_8=8
NAME_8=
CODE_9=9
NAME_9=
CODE_10=10
NAME_10=Kasir 10
CODE_11=11
NAME_11=Kasir 11
CODE_12=12
NAME_12=Kasir 12
CODE_13=13
NAME_13=Kasir 13
CODE_14=14
NAME_14=Kasir 14
CODE_15=15
NAME_15=Kasir 15
CODE_16=16
NAME_16=Kasir 16
CODE_17=17
NAME_17=Kasir 17
CODE_18=18
NAME_18=Kasir 18
CODE_19=19
NAME_19=Kasir 19
CODE_20=20
NAME_20=Kasir 20
CODE_21=21
NAME_21=Kasir 21
CODE_22=22
NAME_22=Kasir 22
CODE_23=23
NAME_23=Kasir 23
CODE_24=24
NAME_24=Kasir 24
CODE_25=25
NAME_25=Kasir 25
CODE_26=26
NAME_26=Kasir 26
CODE_27=27
NAME_27=Kasir 27
CODE_28=28
NAME_28=Kasir 28
CODE_29=29
NAME_29=Kasir 29
CODE_30=30
NAME_30=Kasir 30
CODE_31=31
NAME_31=Kasir 31
[SISTEM]
CASH=01
PRINT=0
GRAFICA1=0
GRAFICA1_IMG=0
GRAFICA2=0
GRAFICA2_IMG=0
OBLIGATE=0
TEST_MENY=0
SINGLE=0
SPEED=0
[SETPORT]
PORT=1
SPEED=9600
[SETLNG]
LNG=True
[SETWDTH]
WDTH=22
[SETPHONE]
PHONENM=
PHONEPT=
PHONEPSS=
[VAT]
TAX_2=
TAX_3=
TAX_4=
TAX_5=
TAX_6=
TAX_7=
TAX_8=
TAX_9=
[VALUTE]
DESCRIPTION_1=
CONVERSION_1=
DESCRIPTION_2=
CONVERSION_2=
DESCRIPTION_3=
CONVERSION_3=
DESCRIPTION_4=
CONVERSION_4=

[UNITS]
DESCR_1=
DESCR_2=
DESCR_3=
DESCR_4=
DESCR_5=
[PLUTYPE]
DESCR_1=Sokovi
DESCR_2=Piva
DESCR_3=Zestina
DESCR_4=kolaci
DESCR_5=pizza
DESCR_6=riba
DESCR_7=domaca kuhin
DESCR_8=Ostalo
 
Odgovor na temu

bojan21
Bojan Zukic
Beograd

Član broj: 101113
Poruke: 251
92.244.151.*



+6 Profil

icon Re: Citanje odredjene grupe stavki iz INI fajla, stream ili kako???19.09.2010. u 20:08 - pre 164 meseci
Nema veze ponavljanje sa tim, sekcija je sekcija :). Problem je sto sam pretpostavio (primer iz prvog posta) da su sekcije odvojene praznom linijom (sto u poslednjem primeru nije slucaj). Zameni ovu liniju:
Code (csharp):

if (line != "")
 

sa ovom:
Code (csharp):

if (line[0] != '[')
 


Pokusaj sad. :)
 
Odgovor na temu

lonelyrider_44
Zrenjanin

Član broj: 42310
Poruke: 445
109.94.104.*



+20 Profil

icon Re: Citanje odredjene grupe stavki iz INI fajla, stream ili kako???19.09.2010. u 20:41 - pre 164 meseci
Mozda je bolji uslov:
Code (csharp):

if (line.Contains("="))
 


U svakom sluchaju, lepshe reshenje je predlozio Bojan21 , kachim ti isti program sa preradjenim kodom, slichan Bojanovom reshenju.
 
Odgovor na temu

bojan21
Bojan Zukic
Beograd

Član broj: 101113
Poruke: 251
92.244.151.*



+6 Profil

icon Re: Citanje odredjene grupe stavki iz INI fajla, stream ili kako???19.09.2010. u 21:06 - pre 164 meseci
Mnogo je bolji, pogotovo sto format INI datoteke varira od aplikacije do aplikacije. Svaka cast. :)

P.S. Ako se borcha sad javi i kaze da ne metoda radi, ja cu da obrisem nalog. :)

Pozdrav
 
Odgovor na temu

borcha
Boris Bokan
;-(
Novi Sad

Član broj: 148976
Poruke: 419
*.dynamic.isp.telekom.rs.



+3 Profil

icon Re: Citanje odredjene grupe stavki iz INI fajla, stream ili kako???19.09.2010. u 22:30 - pre 164 meseci
Ne radiii!!!!


Hahahah!! Salim se....

nemoj brisati nalog , trebaju nam takvi....... ;-))

Svaka cast!!!
 
Odgovor na temu

[es] :: .NET :: Citanje odredjene grupe stavki iz INI fajla, stream ili kako???

[ Pregleda: 4134 | Odgovora: 19 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.