Название: Перевод числа с плавающей запятой в строку Отправлено: Barmaglodd от Июнь 09, 2009, 11:20 Как перевести число с плавающей запятой(double) в строку с учётом локали, с заданным числом знаков после запятой, не выводя нули на конце.
Например, выводим числа с точностью до пятого знака. 10,123 -> 10,123 (а не 10,12300) 125 ->125 (а не 125,00000) Есть ли какой-нибудь встроенный в Qt способ это сделать? Или только "руками": переводим через QLocale в строку, обрезаем нули и запятую в конце. Название: Re: Перевод числа с плавающей запятой в строку Отправлено: spirit от Июнь 09, 2009, 11:24 в описалове QLocale вроде ж были примеры.
Название: Re: Перевод числа с плавающей запятой в строку Отправлено: Barmaglodd от Июнь 09, 2009, 11:44 Нет или я плохо ищу :(
Название: Re: Перевод числа с плавающей запятой в строку Отправлено: spirit от Июнь 09, 2009, 11:47 оно (http://doc.qtsoftware.com/4.5/qlocale.html#details)?
Название: Re: Перевод числа с плавающей запятой в строку Отправлено: Barmaglodd от Июнь 09, 2009, 12:00 А толку-то? Я про это и так написал, мне не нужны нули на конце строки. При указании формата 'f', строка заполняется ими до указанного количества знаков после запятой.
Название: Re: Перевод числа с плавающей запятой в строку Отправлено: Rcus от Июнь 09, 2009, 12:04 Значит нет нужного: в режиме 'f' нули не обрезаются, а в режиме 'g' - ненужное переключение на экспоненциальную форму представления
Название: Re: Перевод числа с плавающей запятой в строку Отправлено: spirit от Июнь 09, 2009, 12:07 Код результат Цитировать 125 в чем проблема? ???125 Название: Re: Перевод числа с плавающей запятой в строку Отправлено: Barmaglodd от Июнь 09, 2009, 12:21 Я говорил о
Код: QLocale::system().toString(125.000000, 'f', 5); а не Код: QLocale::system().toString(125.000000, 'f', 0); ;) Я явно задаю 5 знаков после запятой, а в вашем примере 0. Название: Re: Перевод числа с плавающей запятой в строку Отправлено: spirit от Июнь 09, 2009, 12:27 ээээ, ясно. тогда ручками.
|