Formátovanie reťazcov v C#
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama

Formátovanie reťazcov v C#Formátovanie reťazcov v C#

 

Formátovanie reťazcov v C#

Google       Google       17. 8. 2006       11 802×

Rôzne možnosti zobrazenia textu, čísel, dátumu alebo meny v jazyku C#.

Reklama
Reklama
Polia znakov a čísel, čiže reťazce, majú v C# rôzny druh zápisu a dajú sa ľahko formátovať podľa vlastných potrieb. Často sa pri vývoji môžeme stretnúť s problémom, napr. vypísať niekoľkomiestnu číselnú hodnotu tak, aby bola rozdelená po troch cifrách (10000000 -> 10 000 000). Riešenie tohto problému, ale aj mnohých iných sa bude nachádzať v tomto článku.

Metódy ako napr. Console.WriteLine alebo String.Format slúžiace na výpis a formátovanie reťazcov poskytujú užitočné vlastnosti. Pri uvedení jednoduchého príkladu

int chlapci = 15;
int dievcata= 20;
Console.WriteLine("Pocet chlapcov: {0} Pocet dievcat: {1}", chlapci, dievcata);
je vidno, že hodnoty premenných sú vypísané na mieste zložených zátvoriek s indexom, ktorý určuje poradové číslo premennej. To isté umožňuje metóda String.Format, ktorú v nasledujúcom kóde použijeme pri výpise reťazca do SubItemu v ListView (obrázky pod zdrojovými kódomi majú len informatívny charakter)

int ucet = 60000;
item.SubItems.Add(String.Format("{0}", ucet));


Tu nastáva menší problém s formátom vypísanej hodnoty, ktorá je na prvý pohľad zle čitateľná. Lepšie by bolo, ak by táto hodnota bola rozdelená po troch cifrách čím by sa zlepšil vzhľad aj čitateľnosť

int ucet = 60000;
item.SubItems.Add(String.Format("{0:n0}", ucet));


Tým že sa v zložených zátvorkách za indexom premennej pridal špecifikátor ":n0" sme určili formát výpisu hodnoty premennej v ListView a výsledok je prijateľnejši ako v prvom prípade. Pri spätnej konverzii z upraveného formátu (60 000) na pôvodný sled čísel (60000) je hodnota oddelená na tisícky braná ako string, nie ako číslo. Preto sa táto hodnota premieňa späť na číslo pomocou metódy Parse.

String myString = "60 000";
Console.WriteLine(myString);

int x = int.Parse(myString, System.Globalization.NumberStyles.AllowThousands);
Console.WriteLine(x);
Samozrejme C# obsahuje celú sadu rôznych formátov zobrazenia. Niektoré z nich sú uvedené nižšie v tabuľkách.

Špecifikátor Popis Formát Vstup Výstup
c mena (peniaze) {0:c} 500 500,00 SK
d Celé číslo {0:d} 500 500
e Vedecké číslo {0:e} 500 5,000000e+002
f Pevná rádová bodka {0:f} 500 500,00
g Všeobecný formát {0:g} 500 500
n Číslo s medzerami (alebo čiarkami) po tisícoch {0:n} 50000 50 000,00
r Round trippable {0:r} 3,14 3,14
x Hexadecimálna hodnota {0:x4} 500 1F4

C# taktiež podporuje vytváranie vlastných formátovaní.

Špecifikátor Popis Formát Vstup Výstup
0 Vyplňuje nulami {0:00.0000} 3,14 03,1400
# Uzatvorí číslo {0:(#).##} 3,14 (3),14
. Desatinná bodka so zaokrúhlením {0:0.0} 3,14 3,1
, Oddeľovač tisíciek {0:0,0} 50000 50 000
,. Zmena veľkosti čísla {0:0,.} 50000 50
% Percento {0:0%} 3,14 314%
e Exponent {0:00e+0} 3,14 31e-1

Uvedené tabuľky neobsahujú všetky podporované formátovacie znaky a možnosti. Doplňujúce informácie:

Zložené formátovanie
Štandardné formátovanie čísel
Vlastné formátovanie čísel
Štandardné formátovanie dátumu a času
Vlastné formátovanie dátumu a času

×Odeslání článku na tvůj Kindle

Zadej svůj Kindle e-mail a my ti pošleme článek na tvůj Kindle.
Musíš mít povolený příjem obsahu do svého Kindle z naší e-mailové adresy kindle@programujte.com.

E-mailová adresa (např. novak@kindle.com):

TIP: Pokud chceš dostávat naše články každé ráno do svého Kindle, koukni do sekce Články do Kindle.

Hlasování bylo ukončeno    
0 hlasů
Google
Autor je studentom FEI STU v Bratislave, odbor Aplikovana Informatika a vo svojom volnom case sa zaobera hlavne programovanim a rad sportuje.
Web    

Nové články

Obrázek ke článku Hackerský kongres přiveze v září do Prahy špičky světové kryptoanarchie

Hackerský kongres přiveze v září do Prahy špičky světové kryptoanarchie

Hackerský kongres HCPP16 pořádá od 30. září do 2. října nezisková organizace Paralelní Polis již potřetí, a to ve stejnojmenném bitcoinovém prostoru v pražských Holešovicích. Letos přiveze na třídenní konferenci přes 40 většinou zahraničních speakerů – lídrů z oblastí technologií, decentralizované ekonomiky, politických umění a aktivismu. Náměty jejich přednášek budou také hacking, kryptoměny, věda, svoboda nebo kryptoanarchie.

Reklama
Reklama
Obrázek ke článku ICT PRO školení zaměřené nejenom na ICT

ICT PRO školení zaměřené nejenom na ICT

Dovolte, abychom se představili. Jsme zaměstnanci společnosti ICT Pro, profesionálové v oblasti poskytování komplexních ICT služeb. Neboli služeb spojených s informačními a komunikačními technologiemi, které dnes - ve 21. století - tvoří  nedílnou součást běžného provozu všech moderních firem.

loadingtransparent (function() { var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true; po.src = 'https://apis.google.com/js/plusone.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s); })();
Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý