在android中上传文件的名称应该是什么

时间:2014-10-16 05:21:28

标签: android file file-upload

当我从app上传图像到服务器时,我将其副本保存在我的应用程序的sent_images文件夹中。(无论这些图像是否成功上传,图像都会被保存,不会出于重试目的。) 问题是我使用System.currentTimeMillis()+" .jpg"作为文件名。但是,当用户回溯他的设备时间时,文件名可能会在极端情况下重复。不幸的是,再次尝试上传图像的时间,System.currentTimeMillis()给出了与先前文件上载尝试中给出的时间戳相同的时间戳。 救命啊!

1 个答案:

答案 0 :(得分:1)

您可以计算文件哈希:

MessageDigest md = MessageDigest.getInstance("MD5");
try (InputStream is = Files.newInputStream(Paths.get("file.txt"))) {
  DigestInputStream dis = new DigestInputStream(is, md);
  /* Read stream to EOF as normal... */
}
byte[] digest = md.digest();