package com.mcxiaoke.next.utils;
import android.os.Environment;
import java.io.File;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
/**
* User: mcxiaoke
* Date: 15/6/16
* Time: 10:47
*/
public class ImageUtils {
public static final String PREFIX_IMAGE = "IMG_";
public static final String EXTENSION_JPEG = ".jpg";
public static final String EXTENSION_PNG = ".png";
public static final DateFormat IMG_FILE_NAME_FORMAT = new SimpleDateFormat("yyyyMMdd_HHmmss", Locale.US);
/**
* 保存在 /sdcard/Pictures/xxx,用于普通的保存图片
*/
public static File createPictureFile(String dirName) {
String timeStamp = IMG_FILE_NAME_FORMAT.format(new Date());
String imageFileName = PREFIX_IMAGE + timeStamp + EXTENSION_JPEG;
return new File(getPicturesDir(dirName), imageFileName);
}
/**
* 保存在 /sdcard/DCIM/xxx,用于拍照图片保存
*/
public static File createMediaFile(String dirName) {
String timeStamp = IMG_FILE_NAME_FORMAT.format(new Date());
String imageFileName = PREFIX_IMAGE + timeStamp + EXTENSION_JPEG;
return new File(getMediaDir(dirName), imageFileName);
}
public static File getPicturesDir(String dirName) {
File picturesDir = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES), dirName);
if (!picturesDir.exists()) {
picturesDir.mkdirs();
}
return picturesDir;
}
public static File getMediaDir(String dirName) {
File dcim = new File(Environment.getExternalStorageDirectory(), Environment.DIRECTORY_DCIM);
File mediaDir = new File(dcim, dirName);
if (!mediaDir.exists()) {
mediaDir.mkdirs();
}
return mediaDir;
}
}