Java 从URL读取,将数据存储为双精度?
这听起来很愚蠢,但是我有一个包含double的txt文件,我想把它保存为double。相反,它需要一个字符串。我是做错了还是只需要添加几个步骤?好吧,您需要将字符串解析为双精度。例如,使用Java 从URL读取,将数据存储为双精度?,java,Java,这听起来很愚蠢,但是我有一个包含double的txt文件,我想把它保存为double。相反,它需要一个字符串。我是做错了还是只需要添加几个步骤?好吧,您需要将字符串解析为双精度。例如,使用Double.parseDouble。我应该指出,一个版本字符串听起来并不是一个好主意来存储为双。。。您可能需要考虑使用。双倍通常更适合于“真实世界”的物理值,如距离,而不是“人造”值,如版本号。老实说,我甚至不认为我会使用BigDecimal。。。版本号通常与“正常”编号的处理方式不同 您是否考虑过创建自己的
Double.parseDouble
。我应该指出,一个版本字符串听起来并不是一个好主意来存储为双。。。您可能需要考虑使用。双倍通常更适合于“真实世界”的物理值,如距离,而不是“人造”值,如版本号。老实说,我甚至不认为我会使用BigDecimal
。。。版本号通常与“正常”编号的处理方式不同
您是否考虑过创建自己的类型来表示版本号?那么,您需要将字符串解析为一个double。例如,使用
Double.parseDouble
。我应该指出,一个版本字符串听起来并不是一个好主意来存储为双。。。您可能需要考虑使用。双倍通常更适合于“真实世界”的物理值,如距离,而不是“人造”值,如版本号。老实说,我甚至不认为我会使用BigDecimal
。。。版本号通常与“正常”编号的处理方式不同
您是否考虑过创建自己的类型来表示版本号?Double.parseDouble(字符串)是您所追求的。Double.parseDouble(字符串)是您所追求的。您可以解析您获得的字符串:
Double.parseDouble(inputLine.trim())
但是,事实上,我不认为版本应该是双倍的。在你今天的特殊情况下,情况可能是这样,但它很容易改变。以下是一些流行的“版本化”示例,它们不能表示为双精度:
3.0.52.1.GA
1.5-快照
0.8b
因此,我建议将其保留为字符串。您可以解析获得的字符串:
Double.parseDouble(inputLine.trim())
但是,事实上,我不认为版本应该是双倍的。在你今天的特殊情况下,情况可能是这样,但它很容易改变。以下是一些流行的“版本化”示例,它们不能表示为双精度:
3.0.52.1.GA
1.5-快照
0.8b
所以,我建议留下一个字符串。想知道为什么他不能用DataInputStream来修饰url.openStream()并使用readDouble()?想知道为什么他不能用DataInputStream来修饰url.openStream()并使用readDouble()?我想知道为什么我没有在java文档中查找有关解析Double的内容。非常感谢,我会记得先检查API,然后再假设我卡住了!^^我想知道为什么我没有在java文档中查看有关双重解析的内容。非常感谢,我会记得先检查API,然后再假设我卡住了!^^
public static void getClientUpdate() {
try {
String inputLine;
double version = 0;
URL url = new URL("http://ds-forums.com/client/version.txt");
BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream()));
while ((inputLine = in.readLine()) != null)
System.out.println(inputLine);
in.close();
version = inputLine;
System.out.println("The version is: " + version);
} catch (Exception x) {
System.out.println(x);
}
}