CS-opas:String
Mureakuha
- Teknisistä rajoituksista johtuen artikkelin yllä näkyvä otsikko on virheellinen. Oikea otsikko on C#-opas: String.
Sisällysluettelo |
Ympäristöstä johtuvat erot
string rivinvaihto = System.Environment.NewLine; //Palauttaa rivinvaihtomerkin
Tekstin muotoilu
ToString-metodin tulostusmuotoilu
Numeeriset
ToStringille voidaan antaa muotoilu ohjeita parametrinä. Esim.
using System; public class H3 { public static void Main() { int i = 10; Console.WriteLine(i.ToString("x")); //Tulostaa hexana kokonaisluvun } } //Toinen vaihtoehto tulostaa using System; public class H3 { public static void Main() { string i = "10"; Console.WriteLine("{0:x}",123); } }
Numeeristen arvojen muotoilu
| Merkki | esimerkki | nimitys | fi-FI kulttuuriasetuksella |
| C, c | 10.ToString("c"); | Valuuttamuoto | 10,00€ |
| D, d {pituus} | 123.ToSTring("d5"); | Kokonaislukumuoto | 00123 |
| E, e {pituus} | 123.ToString("e4"); | exponenttiaalinen muoto | 1,2300e+002 |
| F, f {pituus} | 123.ToString("f3); | liukulukutyyppi | 132,000 |
| G, g {pituus} | 123.ToString("g4"); | yleistyyppi | 123 |
| N, n {pituus} | 123.ToString("n"); | numeriinen muoto | 123,00 |
| P, p | 123.ToString("p"); | prosentteina | 12 300,00 % |
| R, r | 3.14159F.ToString("r") | Round-trip | 3,14159 |
| X, x {pituus} | 10.ToString("x"); | hexa muotoon | a |
Pituuden määrittäminen ei ole yleensä pakollinen. Tällöin käytetään maakohtaisissa asetuksissa sovittuja muotoja pituuden suhteenkin.
Päivämäärät
DateTime-structuurin vastaavat ToString muotoilu ohjeet
| merkki | esimerkki fi |
| d | 12.12.2012 |
| D | 12. joulukuuta 2012 |
| t | 22:34 |
| T | 22:35:10 |
| f | 3. heinäkuuta 2005 22:36 |
| F | 3. heinäkuuta 2005 22:36:15 |
| g | 3. 7. 2005 22:36 |
| G | 3. 7. 2005 22:36:30 |
| M, m | 3. helmikuuta |
| R, r | Sun 03 Jul 2005 22:37:22 GMT |
| s | 2005-07-03T22:37:50 |
| u | 2005-07-03 22:37:50Z |
| U | 3. heinäkuuta 2005 19:40:50 |
| Y, y | heinäkuu 2005 |
Maakohtaiset tiedot
using System; using System.Globalization; public class H3 { public static void Main() { CultureInfo ci = new CultureInfo("fi-FI"); Console.WriteLine("DisplayName: {0}",ci.DisplayName); Console.WriteLine("NativeName: {0}", ci.NativeName); } }
Unix tyyliset muotoilijat
| Tämä artikkeli on tynkä. Voit auttaa Kuhaa täydentämällä tämän sivun tietoja. |
String-luokka
StringBuilder-luokka
.NETin merkkijonot ovat sukua Javan vastaaville siltä osin, että ne ovat muuttamattomia. Muuttamattomalla merkkijonolla tarkoitetaan sitä, että kun merkkijonoon esim. lisätään loppuun pätkä, vanha merkkijono jää muistiin (kunnes roskienkerääjä poimii sen pois) uuden kanssa. Toisinsanoen:
string a, b; a = "foo"; // muistissa on "foo" b = "bar"; // muistissa on "foo" ja "bar" a = a + b; // muistissa on "bar", uusi "foobar" ja myös vanha a:n arvo "foo"
Tieto ei ehkä tunnu kovin merkittävältä jos merkkijononkäsittely on vähäistä, mutta enemmän merkkijonojen rakentelua tekevässä ohjelmassa muistinkulutus nousee äkkiä hurjiin lukemiin. Sitä varten on olemassa StringBuilder -luokka:
StringBuilder sb = new StringBuilder (); sb.Append ("foo"); sb.Append ("bar"); sb.ToString (); // palauttaa "foobar"
| Tämä artikkeli on tynkä. Voit auttaa Kuhaa täydentämällä tämän sivun tietoja. |
