You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Google Drive Java API修改modifiedTime失效问题求助

解决Google Drive Java API修改modifiedTime不生效的问题

调用Drive API的files().update接口时,默认会自动将文件的modifiedTime设为当前时间,即便你在FileMetadata中指定了自定义时间也会被覆盖——这是因为API默认的时间处理逻辑会忽略传入的modifiedTime值。

要让自定义的修改时间生效,必须在update请求中显式指定ModifiedTimeBehavior为SET_FIELD_VALUE,告诉API使用你传入的时间值,而非自动生成当前时间。

修改后的代码如下:

File fileMetadata = new File();
DateTime newModifiedTime = new DateTime(lastModified);      
fileMetadata.setModifiedTime(newModifiedTime);

File file = service.files().update(file.getId(), fileMetadata)
        .setFields("id, name, modifiedTime")
        // 指定使用传入的modifiedTime值
        .setModifiedTimeBehavior(Files.Update.ModifiedTimeBehavior.SET_FIELD_VALUE)
        .execute();

额外注意事项:

  • 你必须拥有该文件的编辑权限才能修改modifiedTime
  • 即便同时修改其他字段(比如你注释掉的description),也需要加上上述参数,否则modifiedTime依然会被覆盖为当前时间

内容的提问来源于stack exchange,提问作者b210205

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 06:22:01