Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/230.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在android上保存图像文件的上次修改日期?_Android - Fatal编程技术网

如何在android上保存图像文件的上次修改日期?

如何在android上保存图像文件的上次修改日期?,android,Android,我正在开发一款android应用程序,可以压缩手机上的所有图像 我使用内容解析器来处理图像。但是,压缩后图像的最后修改日期发生了变化。我想保留日期,因为重新启动后,媒体扫描后图像的顺序会更改 使用内容解析程序更新图像上的内容值无效,因为上次修改图像的日期是在媒体扫描后重建的。 Call File.setLastModified也可能无法工作,因为此方法的有效性取决于SD卡的设置。 我需要持久的方法来保持媒体扫描后最后修改的日期。我假设内容解析器可以提供持久化属性的方法 你能帮我吗?我不确定这个逻

我正在开发一款android应用程序,可以压缩手机上的所有图像

我使用内容解析器来处理图像。但是,压缩后图像的最后修改日期发生了变化。我想保留日期,因为重新启动后,媒体扫描后图像的顺序会更改

使用内容解析程序更新图像上的内容值无效,因为上次修改图像的日期是在媒体扫描后重建的。 Call File.setLastModified也可能无法工作,因为此方法的有效性取决于SD卡的设置。 我需要持久的方法来保持媒体扫描后最后修改的日期。我假设内容解析器可以提供持久化属性的方法


你能帮我吗?

我不确定这个逻辑是否能帮到你

try {
            InputStream is = new URL("your image url").openStream();
            BufferedInputStream bis = new BufferedInputStream(is);
            Metadata metadata = ImageMetadataReader.readMetadata(bis,true);


    for (Directory directory : metadata.getDirectories()) {
    for (Tag tag : directory.getTags()) {
        System.out.println(tag);
    }
 }

            }
        catch (ImageProcessingException e){}
        catch (IOException e) {}

这是截取的代码,我们可以获得创建日期、上次修改日期等。

修改EXIF信息成功!非常感谢。


如果您的文件是图像,也许您可以使用EXIF info,这样可以帮助您编写的元数据类不支持EXIF属性的设置。但我很感激!
ExifInterface exif=new ExifInterface(path);    
ExifInterface exifNew=new ExifInterface(newPath);
exifNew.setAttribute(ExifInterface.TAG_DATETIME, exif.getAttribute(ExifInterface.TAG_DATETIME));
exifNew.setAttribute(ExifInterface.TAG_ORIENTATION, exif.getAttribute(ExifInterface.TAG_ORIENTATION));
exifNew.saveAttributes();