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

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

 
Hledat
Vybavení pro Laser Game
Spuštěn Filmový magazín
Laser Game Brno
Laser Game Ostrava

Formátovanie reťazcov v C#

Google       Google       17. 8. 2006       14 724×

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 Konference: Moderní informační systémy podporují automatizaci

Konference: Moderní informační systémy podporují automatizaci

Současná situace v šíření onemocnění Covid-19 klade na řadu firem nové nároky a mnohé z nich jsou nyní více než kdy jindy závislé na nejmodernějších informačních technologiích. Proto i v oblasti podnikových informačních systémů vidíme rostoucí důraz na automatizaci nebo na důslednou integraci. Také o těchto trendech se bude mluvit na konferenci Firemní informační systémy, která se koná 24.9.2020 v pražském Kongresovém centru Vavruška na Karlově náměstí.

Reklama
Reklama
Obrázek ke článku Nebezpečí ukrytá v USB: z nuly na škvarek za pět sekund

Nebezpečí ukrytá v USB: z nuly na škvarek za pět sekund

Za cenu šesti dolarů lze celkem bez obtíží koupit nový, líbivě vyhlížející flash disk. Přidaná hodnota, které se vám spolu s ním dostane, už tak moc líbivá není. To, co se před pár sekundami tvářilo jako externí disk, se po připojení k počítači změní v důmyslné elektrické křeslo, které vaše zařízení v onen příslovečný škvarek promění za pár sekund. Cílovou skupinou pro koupi takových zařízení by mohli být záškodníci, kteří by tímto způsobem osnovali pomstu třeba vůči záletnému partnerovi. 

Obrázek ke článku Znalosti, dovednosti i prestižní titul MBA: Jde to i moderně a online

Znalosti, dovednosti i prestižní titul MBA: Jde to i moderně a online

Snad nikdy není špatná příležitost na investici do hodnotného vzdělání. Obzvlášť v případě, že absolvent dovede teoretické poznatky přetavit v praktické dovednosti, využitelné při řešení problémů i v komunikaci. Právě na to se specializuje studijní program MBA Řízení informačních technologií, vyučovaný na Business Institutu.

Obrázek ke článku Coding Bootcamp Praha: Obor IT krize nepoznamenala, žádaní jsou weboví vývojáři

Coding Bootcamp Praha: Obor IT krize nepoznamenala, žádaní jsou weboví vývojáři

Pandemie Covid-19 otřásla trhem práce v základech. Dopady krize pocítilo celkově až 45 % zaměstnanců. Není divu, že čím dál větší jistotu přináší obor IT. Ten zůstal krizí téměř nepoznamenán a při nutnosti začít dělat věci na dálku se ještě více ukázalo, jak moc mnohé firmy kvalitní IT potřebují. Do IT nyní přicházejí začátečníci, kteří v něm vidí lukrativní budoucnost a jistotu, ale i freelanceři a zaměstnanci z oborů zasažených krizí

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