package com.gh4a.utils;
import android.text.TextUtils;
import android.util.Log;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.Arrays;
import java.util.List;
import java.util.Locale;
public class FileUtils {
private static final String LOG_TAG = "FileUtils";
private static List<String> imageExts = Arrays.asList("png", "gif", "jpeg", "jpg", "bmp", "ico");
public static boolean save(File file, InputStream inputStream) {
OutputStream out = null;
try {
out = new FileOutputStream(file);
int read;
byte[] bytes = new byte[1024];
while ((read = inputStream.read(bytes)) != -1) {
out.write(bytes, 0, read);
}
return true;
} catch (IOException e) {
Log.e(LOG_TAG, e.getMessage(), e);
} finally {
try {
if (inputStream != null) {
inputStream.close();
}
if (out != null) {
out.flush();
out.close();
}
} catch (IOException e) {
Log.e(LOG_TAG, e.getMessage(), e);
}
}
return false;
}
public static String getFileExtension(String filename) {
int mid = filename.lastIndexOf(".");
if (mid == -1) {
return "";
}
return filename.substring(mid + 1, filename.length());
}
public static String getFileName(String path) {
if (TextUtils.isEmpty(path)) {
return "";
}
int mid = path.lastIndexOf("/");
if (mid == -1) {
return path;
}
return path.substring(mid + 1, path.length());
}
public static boolean isImage(String filename) {
if (TextUtils.isEmpty(filename)) {
return false;
}
String ext = getFileExtension(filename);
if (TextUtils.isEmpty(ext)) {
return false;
}
return imageExts.contains(ext.toLowerCase(Locale.US));
}
}