如何在上传到Amazon S3时保留并保留文件原始修改日期的时间戳?

时间:2013-06-18 15:49:55

标签: java amazon-s3 timestamp amazon

在实际将文件上传到S3时,是否有任何方法可以使用Java或使用s3cmd来保留和保留文件上的修改日期,而不是使用sysdate进行LastModified Amazon设置?

Amazon S3似乎使用上传时间戳作为文件的LastModified,而不是原始文件日期/时间戳。

感谢。

2 个答案:

答案 0 :(得分:2)

请记住,S3并不存储文件系统中的“文件”。你给它一个字节序列供它存储。该数据的来源可以是文件,但也可以是由任何数据源生成的随机数据流。该数据可以包含元数据。 GET对象请求中返回的一个元数据是Last-Modified,S3会为您决定。

但是没有理由你不能添加自己的自定义标题并保留你想要的任何元数据:

http://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectPUT.html

具体见“x-amz-meta-”。你可以拥有类似x-amz-meta-what-i-think-last-modified-should-be

的东西

答案 1 :(得分:0)

这真的是亚马逊的建议,我会发布到他们的论坛。或者,您可以使用Java编写一个简单的程序,该程序会将与您上次修改时间相对应的时间戳添加到文件中。从亚马逊下载后,您可以反向运行应用程序以检索该信息。希望这会有所帮助。