[VS2008 c++] problem z konwersją float->string i odwrotnie

W swojej aplikacji pobieram dane z maskedtextBox lub textBox (system::string) i przechowuje je jako zmienną typu float

konwertuję w ten sposób:

zmienna_float = atof((char*)(void*)Marshal::StringToHGlobalAnsi(f1->maskedTextBox2->Text))

Schody zaczynają się gdy chcę wykonać operację odwrotną : zapisanie zmiennej_float do pola maskedtextBox lub textBox (system::string) uzywam następującej funkcji:

textBox->Text = zmienna_float.ToString();

Powyższa funkcja konwertuje całość, ale z użyciem , zamiast . (123,11 zamiast 123.11) Niby nic takiego, ale przy kolejnej konwersji, wyrażenie z pierwszej ramki z kodem urwie część dziesiętną liczby(akceptuje tylko notację, gdzie kropka oddziela cześć całkowitą liczby od części dziesiętnej).

Jakieś sugestie, jak ominąć ten problem?

Fajny potworek(string->float)…

zmienna_float = System::Single::Parse(f1->maskedTextBox2->Text);

Jeśli chcesz kropkę zamiast przecinka podaj CultureInfo.InvariantCulture do ToString i Parse

Czytanie dokumentacji jest zazwyczaj najlepszym sposobem.

No i powiedział co wiedział…

Dzięki Fiołek , działa;)

Technicznie rzecz biorąc, napisałem.

To jest Twój wybór, czy z każdą najprostszą czynnością będziesz leciał na forum i czekał, aż łaskawie Ci ktoś odpowie, czy zajrzysz do dokumentacji (albo jednej z miliona stron w internecie), w której jest to opisane.

Przydałoby się Ci przeczytać także jakiś kurs/tutorial/książkę (chociaż do tego dziwacznego języka, w którym postanowiłeś pisać raczej ich za bardzo nie ma), w którym miałbyś opisane podstawowe operacje. Może wówczas nie tworzyłbyś takich arcykoszmarów, jak kod w pierwszym poście.