Ich habe beim Löschen von Exif unter Java / Android eine praktische Bibliothek namens Sanselan verwendet. Der Grund für die Verwendung dieser Bibliothek ist, dass der Metadatenextraktor schreibgeschützt ist, sodass Exif-Informationen nicht gelöscht, hinzugefügt oder geändert werden können und ExifInterface aufgrund seines instabilen Verhaltens nicht verwendet werden kann.
/*Import weggelassen*/
public static void Main(String[] args) {
String path1 = "c:\image\img0001.jpg "; //Dateipfad
String path2 = path.toLowerCase().replace(".jpg ", "_clr_exif.jpg ");
//Exif-Informationen löschen
removeExifTag(new File(path1), new File(path2));
}
public static void removeExifTag(final File srcJpegFile, final File dstJpegFile) {
OutputStream os = null;
try {
os = new FileOutputStream(dstJpegFile);
os = new BufferedOutputStream(os);
//Exif Löschmethode
new ExifRewriter().removeExifMetadata(srcJpegFile, os);
os.close();
os = null;
System.out.println("SUCCESS");
} catch (FileNotFoundException e) {
System.out.println("ERROR");
e.printStackTrace();
} catch (ImageWriteException e) {
System.out.println("ERROR1");
e.printStackTrace();
} catch (IOException e) {
System.out.println("ERROR2");
e.printStackTrace();
} catch (ImageReadException e) {
e.printStackTrace();
} finally {
if (os != null) {
try {
os.close();
} catch (final IOException e) {
}
}
}
}
Recommended Posts