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

Citanje iz fajla u C#

[es] :: .NET :: .NET Desktop razvoj :: Citanje iz fajla u C#

[ Pregleda: 4008 | Odgovora: 11 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

cvolka11

Član broj: 163510
Poruke: 55
195.252.72.*



Profil

icon Citanje iz fajla u C#28.11.2007. u 18:42 - pre 199 meseci
Kako da pročitam reči odvojene blanko karakterom iz tekstualnog fajla u C#?

Hvala
 
Odgovor na temu

android~paranoid

Član broj: 81947
Poruke: 211
212.200.180.*



Profil

icon Re: Citanje iz fajla u C#28.11.2007. u 21:39 - pre 199 meseci
Code:

            StreamReader objReader = new StreamReader("nesto.txt");
            string str = objReader.ReadToEnd();
            objReader.Close();

            List<string> stringovi = new List<string>();

            foreach (string subString in str.Split(' '))
           {
                    stringovi.Add (subString);
           }

Mislim, šta reći !
 
Odgovor na temu

Shadowed
Vojvodina

Član broj: 649
Poruke: 12848



+4784 Profil

icon Re: Citanje iz fajla u C#28.11.2007. u 23:59 - pre 199 meseci
Nisam siguran pa taman i da se proverim, da li bi se str.Split(' ') izvrsilo samo jednom (kao sto bi bilo ovde potrebno)?
Tj. kako foreach interno radi?
 
Odgovor na temu

aleksandarpopov
IT consultant
Senta

Član broj: 57172
Poruke: 484
77.46.154.*

Sajt: www.linkedin.com/in/aleks..


Profil

icon Re: Citanje iz fajla u C#29.11.2007. u 09:40 - pre 199 meseci
Da, pozvace se samo jednom i vratice niz stringova (ako ih ima)... uostalom imas ovde http://msdn2.microsoft.com/en-us/library/aa288257(VS.71).aspx
Pozdrav.
RTFM
 
Odgovor na temu

cvolka11

Član broj: 163510
Poruke: 55
195.252.72.*



Profil

icon Re: Citanje iz fajla u C#29.11.2007. u 15:07 - pre 199 meseci
Kapiram,hvala puno.

Jos jedno pitanje, kako bih mogao sada te reci da upisujem u novi fajl ali da budu sortirane,svaka rec u novom redu.

Hvala
 
Odgovor na temu

jablan

Član broj: 8286
Poruke: 4541



+710 Profil

icon Re: Citanje iz fajla u C#29.11.2007. u 15:21 - pre 199 meseci
Zašto mi ovo liči na domaći/seminarski zadatak?

Šta ti konkretno ne ide, napiši kako si probao pa neće.
 
Odgovor na temu

aleksandarpopov
IT consultant
Senta

Član broj: 57172
Poruke: 484
77.46.154.*

Sajt: www.linkedin.com/in/aleks..


Profil

icon Re: Citanje iz fajla u C#29.11.2007. u 15:23 - pre 199 meseci
Sa StreamWritter (http://msdn2.microsoft.com/en-us/library/aa735748(VS.71).aspx) i WriteLine - za svaki elemenat u onoj listi iz primera sto ti je android~paranoid dao.
RTFM
 
Odgovor na temu

negyxo
Aleksandar Perkuchin

Član broj: 29751
Poruke: 898
77.46.157.*



+171 Profil

icon Re: Citanje iz fajla u C#29.11.2007. u 18:06 - pre 199 meseci
Citat:
Shadowed: Nisam siguran pa taman i da se proverim, da li bi se str.Split(' ') izvrsilo samo jednom (kao sto bi bilo ovde potrebno)?
Tj. kako foreach interno radi?


foreach je jezikca konstrukcija, tj. kompajler u pozadini uradi implementaciju while petlje. U zavisnosti da li objekat implementira IDisposable ovo varira:
Code:

Enumerator enumerator = (collection).GetEnumerator();
try {
    while (enumerator.MoveNext()) {
        ElementType element = (ElementType)enumerator.Current;
        statement;
    }
}
finally {
    IDisposable disposable = enumerator as System.IDisposable;
    if (disposable != null) disposable.Dispose();
}


Zanimljivo da Reflecotor prikazuje foreach petlju a ne ovakvu while konstrukciju, sto ce reci, izgleda da cita odredjeni blok IL kodova kako bi zakljucio da je u pitanju foreach petlja. Ono sto je jos zanimljivo je, sto sve nizove ([]) foreach drukcije konstruise u odnosu na klase koje implementiraju IEnumerable. Ukoliko klasa implementira IEnumerable onda se poziva citava ova konstrukcija, dok ako je u pitanju niz, onda se radi prosto uporedjivanje duzine niza sa trenutnom pozicijom u while petlji. Drugim recima, brze radi foreach sa [] nego sa klasama koje implementiraju IEnumerable i to skoro 2x.
Da, zaboravih, sporije je ako se radi samo uporedjivanje foreach bez ikakvog dodatnog overhead-a, sto u praksi niko ne koristi, dok ako postoji i obicno sabranje dve promenljive u foreach, onda ta razlika bledi sa povecanjem kompleksnosti operacije, drugim recima, skoro da je nebitno.

@cvolka11
Imas System.IO.File.ReadAllText method, posto vidim da citas odjednom ceo fajl.
 
Odgovor na temu

android~paranoid

Član broj: 81947
Poruke: 211
212.200.180.*



Profil

icon Re: Citanje iz fajla u C#29.11.2007. u 18:09 - pre 199 meseci
Citat:
cvolka11: Kapiram,hvala puno.

Jos jedno pitanje, kako bih mogao sada te reci da upisujem u novi fajl ali da budu sortirane,svaka rec u novom redu.

Hvala


Code:

           stringovi.Sort();

           StreamWriter objWriter = new StreamWriter("nestoDrugo.txt");

           for (int i = 0; i < stringovi.Count; i++)
           {

               objWriter.WriteLine(stringovi[i]);
           }
           objWriter.Close();

Mislim, šta reći !
 
Odgovor na temu

Shadowed
Vojvodina

Član broj: 649
Poruke: 12848



+4784 Profil

icon Re: Citanje iz fajla u C#29.11.2007. u 19:11 - pre 199 meseci
@negyxo, hvala na odgovoru. Ono zbog cega sam pitao je to sto se sama kolekcija (niz u ovom slucaju) dobija u samoj foreach petlji pa ne znam da li kompajler nju uzme u neku promenljivu i onda nju koristi ili poziva svaki put? Pretpostavljam da je ovo prvo, ali sam par puta imao nedoumicu sta ce se desavati pa zato pitam (interesuje me i za javu isto, iako nije bas tema ovog foruma).
 
Odgovor na temu

negyxo
Aleksandar Perkuchin

Član broj: 29751
Poruke: 898
77.46.157.*



+171 Profil

icon Re: Citanje iz fajla u C#29.11.2007. u 20:25 - pre 199 meseci
Citat:
Shadowed: Ono zbog cega sam pitao je to sto se sama kolekcija (niz u ovom slucaju) dobija u samoj foreach petlji pa ne znam da li kompajler nju uzme u neku promenljivu i onda nju koristi ili poziva svaki put? Pretpostavljam da je ovo prvo, ali sam par puta imao nedoumicu sta ce se desavati pa zato pitam (interesuje me i za javu isto, iako nije bas tema ovog foruma).


E sad, da li ovo konstatujes sta ti nije bilo jasno ili je pitanje? Ukoliko je pitanje onda iz prethodnog odgovora mozes videti da se GetEnumerator() poziva pre while petlje, sto znaci, da se ne poziva na svakoj iteraciji jer bi to bilo suludo. Verovatno i sam znas da svaki poziv f-je zahteva par operacija sa registrima i stekom, sto je bespotrebni overhead.
Sad, sto se tice jave, to vec ne znam, ali pretpostavljam da je resenje veoma slicno.
 
Odgovor na temu

Shadowed
Vojvodina

Član broj: 649
Poruke: 12848



+4784 Profil

icon Re: Citanje iz fajla u C#29.11.2007. u 21:06 - pre 199 meseci
OK, da, u pravu si, nisam lepo obratio paznju, kada uzme jednom enumerator, posle uvek radi sa istom kolekcijom (od koje je i uzet), i da, isto je i u javi. Hvala!
 
Odgovor na temu

[es] :: .NET :: .NET Desktop razvoj :: Citanje iz fajla u C#

[ Pregleda: 4008 | Odgovora: 11 ] > FB > Twit

Postavi temu Odgovori

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