我有一个对象,其中一个属性是图像ID。 图像保存在文件夹中,其名称是其ID。 有些图像是jpg文件,有些是png文件,有些只是没有扩展名的图像。 我的问题是,如果我只知道存储的位置及其名称,是否有办法知道扩展名。
private void LoadImagenArticulo(Articulo articulo, ImageView imageViewControl)
{
try {
if(articulo == null)
imageViewControl.setImageResource(R.drawable.articulo_no_encontrado);
else
{
String imagePath = Fachada.getInstance().getImageFolder();
if(imagePath != null && !imagePath.equals(""))
{
String pathName = imagePath + "/img" + articulo.getIdImagen();
File image = new File(pathName);
if(image.exists())
{
Bitmap imageBitmap = UtilsUI.decodeFile(image);
if(imageBitmap != null)
imageViewControl.setImageBitmap(imageBitmap);
}
else
imageViewControl.setImageResource(R.drawable.articulo_sin_imagen);
}
else
imageViewControl.setImageResource(R.drawable.articulo_sin_imagen);
}
} catch (Exception e) {
Log.w("Exception", e.toString());
}
答案 0 :(得分:0)
有些工具可以根据内容检查实际的文件类型。试试这个:Java Mime Magic。
编辑: 我找到了一个更简单的解决方案:
public static String getContentType(File file) throws IOException {
return Files.probeContentType(file.toPath());
}
但是我还没有测试过所有文件类型。