[英]Converting a string to FileTime in java
我有这个问题。 问题:我正在制作一个程序,其中我通过字符串格式的JFormatedTextField
从用户那里获取输入,然后我希望此值是用户选择的文件的创建时间。
因此,我需要使用仅接受fileTime格式的setTimes()函数。 因此问题是:::: 我如何将字符串转换为合格的fileTime,以便可以由.nio.attribute中预定义的setTimes()函数使用。
http://www.docjar.com/docs/api/java/nio/file/attribute/FileTime.html
这将达到目的:
您必须更改日期格式(新的SimpleDateFormat(...),就像在文本字段中输入日期一样,并确实删除main方法。
public static void main(final String[] args) {
// TODO Auto-generated method stub
String date = "01.01.2013 10:00:10";
long milis;
try {
milis = new SimpleDateFormat("dd.MM.yyyy hh:mm:ss").parse(date)
.getTime();
FileTime fileTime = FileTime.fromMillis(milis);
System.out
.println("Time: " + fileTime.toString());
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
根据输入的格式(我想它类似于"dd/MM/yy HH:mm:ss"
),您可以使用SimpleDateFormat
将其转换为Date
,从Date
可以使用Date.getTime()
获得毫秒Date.getTime()
,最后使用该值与java.nio.file.attribute.FileTime.fromMillis(long)
一起建立FileTime
这样的事情应该做到:
String text = textField.getText();
Date date = new SimpleDateFormat("dd/MM/yy HH:mm:ss").parse(text);
FileTime time = FileTime.fromMillis(date.getTime());
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.