java - 将 java.util.Date 对象转换为 Windows FILETIME 结构

标签 java winapi jna

我有一个 Java 应用程序,我需要使用 JNA 调用一个 Windows DLL。我需要调用的函数实际上需要一个 __int64(在内部它将它分成 FILETIME 结构的低/高部分)。给定一个 java.util.Date 对象,我如何将其转换为适合 FILETIME 格式的值?

最佳答案

这是使用 Java nio 实现的方法

    BasicFileAttributes attr = Files.readAttributes(filePath, BasicFileAttributes.class);
    DateFormat df = new SimpleDateFormat("yyyy/MM/dd");
    Date d = new Date(attr.creationTime().toMillis()); //attr.creationTime() returns a FileTime             
    System.out.println(df.format(d));

关于java - 将 java.util.Date 对象转换为 Windows FILETIME 结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3459667/

相关文章:

java - JNA 结构和指针映射

java - SLF4J 记录器不向控制台打印任何内容

java - 如何避免使用 textWatcher 更改 editText?

c++ - 终止使用 QueueUserWorkItem(win 32/nt5) 创建的线程池中长时间运行的线程

c++ - win32 GUI 的拖放支持

java - 无法初始化类 com.sun.jna.Native

java - 单元测试定义 - 范围和模拟外部依赖

java - 是否可以在注释中使用 NamedMapConverter?如何?

c++ - 当用户调整对话框大小时,如何强制Windows不要在对话框中重绘任何内容?

java - 使用 UnmanagedExports 和 JNA 将字节数组从 C# 返回到 Java