Как преобразовать число double в string, сохранив десятичный вид?
В итоге строке содержится «1E-8». Как сохранить формат числа и получить строку «0.00000001»?
- Вопрос задан более трёх лет назад
- 9037 просмотров
Комментировать
Решения вопроса 1
Лучшая документация — исходники
https://msdn.microsoft.com/ru-ru/library/kfsatb94(v=vs.110).aspx
Ответ написан более трёх лет назад
kykyryky @kykyryky Автор вопроса
Видел эту страницу, но не разобрался.
Все чего добился, так это с помощью
string str = string.Format(«», x);
получил ответ с фиксированным числом знаков после запятой: «0.0000000100»
как вариант
double x = 0.00000001;
string str = x.ToString(«0.###################»);
еще так
double x = 0.00000001;
string str = ((decimal)x).ToString();
Как string преобразовать в double java
Чтобы в Java преобразовать строку в тип double , можно воспользоваться методом parseDouble() класса Double :
var number = Double.parseDouble("10.34"); System.out.println(number); // => 10.34
В случае, если строку невозможно преобразовать в число типа double , будет выброшено исключение NumberFormatException :
var number = Double.parseDouble("abc"); // Exception java.lang.NumberFormatException
Как преобразовать string в double?
У тебя наверное русская локализация, и там разделитель запятая. Используй второй аргумент в Parse там можно управлять настройками локазаций.
Решения вопроса 1
Василий Банников @vabka Куратор тега C#
Токсичный шарпист
Если у тебя в ОС стоит русская локаль, то в качестве разделителя по-умолчанию будет использоваться запятая.
Если тебе нужно парсить именно с точкой, то можно так:
var result = double.Parse("42.69", System.Globalization.CultureInfo.InvariantCulture);
Java: преобразование строки в число и наоборот
В некоторых случаях при программировании на Java нам нужно выполнить преобразование строки в число или числа в строку. Это бывает, если мы имеем величину определённого типа и желаем присвоить эту величину переменной другого типа. Преобразования типов в Java осуществляются разными способами, давайте рассмотрим наиболее популярные из них.
Как преобразовать строку в число в Java?
Речь идёт о преобразовании String to Number. Обратите внимание, что в наших примерах, с которыми будем работать, задействована конструкция try-catch. Это нужно нам для обработки ошибки в том случае, когда строка содержит другие символы, кроме чисел либо число, которое выходит за рамки диапазона предельно допустимых значений указанного типа. К примеру, строку «onlyotus» нельзя перевести в тип int либо в другой числовой тип, т. к. при компиляции мы получим ошибку. Для этого нам и нужна конструкция try-catch.
Преобразуем строку в число Java: String to byte
Выполнить преобразование можно следующими способами:
C помощью конструктора:
try < Byte b1 = new Byte("10"); System.out.println(b1); >catch (NumberFormatException e)
С помощью метода valueOf класса Byte:
String str1 = «141»; try < Byte b2 = Byte.valueOf(str1); System.out.println(b2); >catch (NumberFormatException e)
С помощью метода parseByte класса Byte:
byte b = 0; String str2 = «108»; try < b = Byte.parseByte(str2); System.out.println(b); >catch (NumberFormatException e)
А теперь давайте посмотрим, как выглядит перевод строки в массив байтов и обратно в Java:
String str3 = «20150»; byte[] b3 = str3.getBytes(); System.out.println(b3); //массив байтов переводится обратно в строку try < String s = new String(b3, "cp1251"); System.out.println(s); >catch (UnsupportedEncodingException e)
Преобразуем строку в число в Java: String to int
Здесь, в принципе, всё почти то же самое:
Используем конструктор:
try < Integer i1 = new Integer("10948"); System.out.println(i1); >catch (NumberFormatException e)
Используем метод valueOf класса Integer:
String str1 = «1261»; try < Integer i2 = Integer.valueOf(str1); System.out.println(i2); >catch (NumberFormatException e)
Применяем метод parseInt:
int i3 = 0; String str2 = «203955»; try < i3 = Integer.parseInt(str2); System.out.println(i3); >catch (NumberFormatException e)
Аналогично действуем и для других примитивных числовых типов данных в Java: short, long, float, double, меняя соответствующим образом названия классов и методов.
Как преобразовать число в строку в Java?
Теперь поговорим о преобразовании числа в строку (Number to String). Рассмотрим несколько вариантов:
1. Преобразование int to String в Java:
int i = 53; String str = Integer.toString(i); System.out.println(str);2. Преобразование double to String в Java:
double i = 31.6e10; String str = Double.toString(i); System.out.println(str);3. Преобразуем long to String в Java:
long i = 3422222; String str = Long.toString(i); System.out.println(str);4. Преобразуем float to String в Java:
float i = 3.98f; String str = Float.toString(i); System.out.println(str);