Avatar
Tayson
Člen
Avatar
Tayson:

Zdravim viete mi niekto povedat rozdiel medzi tymito dvoma stringwriter a streamwriter ?

 
Odpovědět 27.1.2015 14:39
Avatar
Jan Vargovský
Redaktor
Avatar
Odpovídá na Tayson
Jan Vargovský:

StreamWriter ti píše někde do souboru (nebo do streamu).
StringWriter ti píše jen do StringBuilderu.

Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
 
Nahoru Odpovědět 27.1.2015 14:45
Avatar
Tayson
Člen
Avatar
Odpovídá na Jan Vargovský
Tayson:

A mozes mi blizsie povedat co je ten stringbuilder ?nejako tak zjednodusene ?

 
Nahoru Odpovědět 27.1.2015 15:33
Avatar
Jan Vargovský
Redaktor
Avatar
Odpovídá na Tayson
Jan Vargovský:

Třída pro rychlé spojování stringů, protože ty jsou v .NETu immutable, takže kdykoliv změníš jejich hodnotu, je to jako kdybys smazal instanci a vytvářel novou, proto existuje StringBuilder.

Tenhle kód:

const int N = 100000;
Stopwatch sw1 = Stopwatch.StartNew();
string s = string.Empty;
for (int i = 0; i < N; i++)
    s += " ";
sw1.Stop();
Console.WriteLine(sw1.Elapsed);

je tisíckrát pomalejší než:

const int N = 100000;
Stopwatch sw2 = Stopwatch.StartNew();
StringBuilder sb = new StringBuilder();
for (int i = 0; i < N; i++)
    sb.Append(" ");
sw2.Stop();
Console.WriteLine(sw2.Elapsed);
 
Nahoru Odpovědět 27.1.2015 15:41
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 4 zpráv z 4.