CS-opas:String

Mureakuha

Loikkaa: valikkoon, hakuun
Teknisistä rajoituksista johtuen artikkelin yllä näkyvä otsikko on virheellinen. Oikea otsikko on C#-opas: String.

Sisällysluettelo

Ympäristöstä johtuvat erot

MSDN Documenteissa

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

Merkkiesimerkkinimitysfi-FI kulttuuriasetuksella
C, c10.ToString("c");Valuuttamuoto10,00€
D, d {pituus}123.ToSTring("d5");Kokonaislukumuoto00123
E, e {pituus}123.ToString("e4");exponenttiaalinen muoto1,2300e+002
F, f {pituus}123.ToString("f3);liukulukutyyppi132,000
G, g {pituus}123.ToString("g4");yleistyyppi123
N, n {pituus}123.ToString("n");numeriinen muoto123,00
P, p123.ToString("p");prosentteina12 300,00 %
R, r3.14159F.ToString("r")Round-trip3,14159
X, x {pituus}10.ToString("x");hexa muotoona

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

merkkiesimerkki fi
d12.12.2012
D12. joulukuuta 2012
t22:34
T22:35:10
f3. heinäkuuta 2005 22:36
F3. heinäkuuta 2005 22:36:15
g3. 7. 2005 22:36
G3. 7. 2005 22:36:30
M, m3. helmikuuta
R, rSun 03 Jul 2005 22:37:22 GMT
s2005-07-03T22:37:50
u2005-07-03 22:37:50Z
U3. heinäkuuta 2005 19:40:50
Y, yheinä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

MSDN Documenteissa

Tämä artikkeli on tynkä. Voit auttaa Kuhaa täydentämällä tämän sivun tietoja.

String-luokka

MSDN Documenteissa


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.
Henkilökohtaiset työkalut