目标是使用 JAVA命令的最小数量从MATLAB命令行设置文件的创建日期。 MATLAB's ability to process JAVA NIO commands is impeded by the auto-boxing需要使它们透明地工作,因此有必要调用其参数的数组形式。
Starting from Java 7, one can use java.nio.file.Files.setAttribut and the creationTime attribute.因为必须从MATLAB提示符下发出命令,所以受测系统存在JDK 1.7的约束。
我试图如下所示在MATLAB中计算新的文件创建日期,并试图避免使用FileTime.fromMillis(c.getTimeInMillis())
设置文件创建日期(如果可能)。
是否存在另一种格式来设置日期/时间= 9/1/18 16:00? filedate
已计算,但无法转换为适当的文件时间。
MATLAB命令:
p="C:DATA\testfile.txt"
filedate=1000*posixtime(datetime('2018-09-01 16:00','InputFormat','uuuu-MM-dd HH:mm','TimeZone','UTC'))
java.nio.file.Files.setAttribute(p, "creationTime", filedate, javaArray('java.nio.file.LinkOption', 0));
答案 0 :(得分:0)
MATLAB m功能已在R2017A和JDK 1.7中进行了测试:
Name Type
-------------------------------
"lastModifiedTime" FileTime
"lastAccessTime" FileTime
"creationTime" FileTime
"size" Long
"isRegularFile" Boolean
"isDirectory" Boolean
"isSymbolicLink" Boolean
"isOther" Boolean
"fileKey" Object
可以找到其他属性here:
\n
仅当您成功使用该功能时,才应对此答案进行投票。