Zapis a cteni v TxT – .NET – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Zapis a cteni v TxT – .NET – Fórum – Programujte.comZapis a cteni v TxT – .NET – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
Mudraon
~ Anonymní uživatel
28 příspěvků
10. 2. 2011   #1
-
0
-

Zdravim ... Predem chci rict ze nejde jenom o prikazy jak to udelat ale jak provyst urcity veci..
Takze potreboval bych poradit v tom ze si chci do TxT zapisovat urcity veci.
Napr :
Karel
123

A potreboval bych aby me to projelo od zacatku dokonce a kdyz by to naslo Karel tak by se ukazalo to cislo co je na nasledujicim radku.
Technicka otazka kdyz bych mel

Karel
123 456 789

Tak avy me to takzdy trojcisli vypsalo zvlast ? JDe to takhle nejak udelat ? Dekuji za odpovedi.

Nahlásit jako SPAM
IP: 89.190.90.–
Reklama
Reklama
Petrroll0
Stálý člen
10. 2. 2011   #2
-
0
-

Čtení i zápis můžeš provádět pomocí objektů StreamWriter a StreamReader, konkrétně jejich metody (nepletu-li se) WriteLine & ReadLine. Poměrně hezky je popsáno zde: http://csharp.aspone.cz/%28A%283KOP3b4sywEkAAAAMzhhYTA2ZGItYzc5Ni00Y2U0LTk2ZDUtNThkZTAxMDZjNWNiCo_5hOF4X8k9JEAW0W1tDSPW0uw1%29%29/kody/soubory/souboryObecne.aspx

Ad1: Nevím jestli je to nejoptimálnější postup (pokud tedy nepoužíváš nějaké databáze), ale projel bych celý soubor, řádek po řádku, současně bych si zavedl nějakou bool proměnou, která pokud by byla true tak bych daný řádek zobrazil. Poté, pokud bych našel string "Karel" tak bych do danou proměnou nastavil na true, a tudíž by se další řádek (záznam) zobrazil).

Ad2: Něco jsem našel na internetu, ale nevím jestli je to nejoptimálnější, koukni http://www.techrepublic.com/article/easily-parse-string-values-with-net/6030362.

Nahlásit jako SPAM
IP: 92.62.224.–
Mudraon
~ Anonymní uživatel
28 příspěvků
10. 2. 2011   #3
-
0
-

Diky za napady pokusim se neco spachtit ale neverim tomu moc ... Jde mi o to ze uz jsem kdysi tohle psal akorad pro jinej jazyk myslim ze to byl VB viz ukazka



f.Open()
X=f.ReadNumber()
Y=f.ReadNumber()
f.Close()
A pak sem si je vypisoval a zapis vypadal takhle napr
1234
2442


Snad se mi neco povede s tim udelat ...

Nahlásit jako SPAM
IP: 89.190.90.–
Petrroll0
Stálý člen
10. 2. 2011   #4
-
0
-

Pokud tam máš jednotnou strkukturu, tj. čísla jsou vždy oddělená mezerou tak to není tak složité.



string radek = streamReader.ReadLine(); //přečteš celý řádek ze souboru, uložíš ho do proměnné.
string[] cisla //Dekladuješ pole, do kterého později promenou radek rozprazuješ (rozsekáš)
cisla = radek.Split(" ") //Zavoláš metodu, která do pole uloží hodnoty rozsekáním původního stringu, znak podle kterého to bude rozsekávat je jako parametr, zde mezera
//A v poli máš poté rozsekaná daná čísla, pole poté projedeš např. příkazem foreach
foreach(string cislo in cisla)
{
Console.WriteLine(cislo);
}


A ten první příklad //Nejsem si úplně jistej, splácal jsem to teď z hlavy:


StreamReader precti = File.OpenText("@E:\textak.txt");
string radek;
bool zapis = false;
while ((radek = precti.ReadLine()) != null)
{
if(zapis) then{Console.WriteLine(radek);}
zapis = false;
if(radek == "Karel") then{zapis = true;}
}
precti2.Close();


//Psáno z hlavy, tj. zde mohou být syntaktické chyby a celkově to není dobrý kód, StreamReader/Writer by měl být v protivyjímkovém bloku (buďto jednodušeji pomocí usign, nebo pomocí try/finally.)

Nahlásit jako SPAM
IP: 92.62.224.–
Mudraon
~ Anonymní uživatel
28 příspěvků
10. 2. 2011   #5
-
0
-

Jj dik vyzkousim to az budu mit vic casu ... Prozatim diky za naky to info jak by to eventuelne slo diky...

Nahlásit jako SPAM
IP: 89.190.90.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 92 hostů

Podobná vlákna

čtení a zápis souboru — založil _Radek_

čtení a zápis do souboru 3.2 — založil dragon124

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý