我需要能够将当前日期(年、月、日)和时间(时、分、秒)存储到 CSV 文件中,然后再读取它们。
用于创建日期 我试过使用
Date date = new Date();
构造当前日期,但是当我
date.toString();
它给了我一个非常优雅的字符串来描述日期和时间,它似乎无法存储到 CSV 文件中并在以后读取。那么如何以一种可以在之后读取的格式写入 CSV 文件呢?
此外,阅读 CSV 文件,我发现了类似的建议
SimpleDateFormat df = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss");
Date d = df.parse("17/02/2015 01:18:15");
根据之前输出的格式,这可能吗?这种使用需要注意哪些异常(exception)情况?
感谢任何帮助。谢谢
最佳答案
用日期格式写日期:
DateFormat df = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss");
Date date = new Date();
System.out.println(df.format(date));
要解析日期,您可以使用相同的格式:
DateFormat df = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss");
Date date = df.parse("17/02/2015 01:18:15");
根据您的用例,您可能还会发现显式设置时区(例如 UTC)是值得的,这样无论本地机器的时区/夏令时等如何,您都可以获得相同的结果。
df.setTimeZone(TimeZone.getTimeZone("UTC"));
或者,您可以使用基础 long
(自纪元以来的毫秒数),日期建立在...
写:
Date date = new Date();
System.out.println(date.getTime());
阅读:
long dateValue = // As read from the file
Date date = new Date(dateValue);
就个人而言,我会使用 DateFormat
,尽管它更冗长且工作量更大,因为它将使文件内容更易于阅读。
如果您需要读取/写入文件或异常处理方面的帮助,我建议您提出单独的问题。
关于java - 将日期和时间读写到 CSV 文件中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28547162/