Diskuze: Double na String C#

C# .NET .NET (C# a Visual Basic) Double na String C# American English version English version

Avatar
rwn
Člen
Avatar
rwn:

Zdravím, je to docela taková blbost, ale třeba někdo bude mít nápad. Zjednoduším problém co to jde. Potřeboval bych převést typ Double na String, ale tak, aby desetinná čárka byla zastoupena klasicky desetinnou tečkou, tak jak to má double. Je to z toho důvodu, žebych si chtěl vypsat kolekci typu double jako dlouhý string a oddělit si hodnoty čárkama, což mě ty desetinné čárky docela mění výsledky. :) Jediné co mě tak napadlo by bylo zavolat na to .Replace a nahradit všechny čárky tečkama, ale nepřijde mě to jako nejštastnější řešení. Zkoušel jsem i string formát, ale vždy měl ten string čárku, ikdyž jsem chtěl tečku. Nějaký nápad? :)

Editováno 22.5.2015 22:07
Odpovědět 22.5.2015 22:06
Co můžeš naprogramovat dnes, neodkládej na zítřek.
Avatar
Odpovídá na rwn
Neaktivní uživatel:

Myslíš niečo takéto?...

 foreach (double number in doubles)
    result += number.ToString().Replace(',', '.') + ", ";
result = result.Remove(result.Length - 2);
Console.WriteLine(result);
Editováno 22.5.2015 22:20
Nahoru Odpovědět 22.5.2015 22:19
Neaktivní uživatelský účet
Avatar
Jan Vargovský
Redaktor
Avatar
Odpovídá na rwn
Jan Vargovský:
double[] arr = { -1, 0, 1.4, 2.5, 3.6, 4 };
string str = String.Join(", ", arr.Select(n => n.ToString(CultureInfo.InvariantCulture.NumberFormat)));

Btw, ono stačí hodit jakoukoliv zemi, která prostě používá tečku, jinak si to vezme implicitně z aktuálního vlákna ve kterém jsi (tím pádem, se to může chovat jinak na různých OS).

Editováno 22.5.2015 22:40
Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
 
Nahoru Odpovědět 22.5.2015 22:38
Avatar
rwn
Člen
Avatar
Odpovídá na Neaktivní uživatel
rwn:

Já jsem to myslel tak, jestli to nejde dělat i **jinak ** než přes .Replace() :)

Nahoru Odpovědět 22.5.2015 22:49
Co můžeš naprogramovat dnes, neodkládej na zítřek.
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.