package com.duoyou.task.sdk.xutils.common.util; import android.os.Build; import android.os.Environment; import android.os.StatFs; import com.duoyou.task.sdk.xutils.x; import java.io.Closeable; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; public class FileUtil { private FileUtil() { } /* JADX WARN: Multi-variable type inference failed */ /* JADX WARN: Type inference failed for: r0v2, types: [java.io.OutputStream, java.io.Closeable, java.io.FileOutputStream] */ /* JADX WARNING: Unknown variable types count: 1 */ public static boolean copy(String str, String str2) { Throwable th; FileInputStream fileInputStream; ?? fileOutputStream; File file = new File(str); if (!file.exists()) { return false; } File file2 = new File(str2); IOUtil.deleteFileOrDir(file2); File parentFile = file2.getParentFile(); if (!parentFile.exists() && !parentFile.mkdirs()) { return false; } FileInputStream fileInputStream2 = null; try { fileInputStream = new FileInputStream(file); try { fileOutputStream = new FileOutputStream(file2); } catch (Throwable th2) { th = th2; try { LogUtil.d(th.getMessage(), th); return false; } finally { IOUtil.closeQuietly(fileInputStream); IOUtil.closeQuietly(fileInputStream2); } } try { IOUtil.copy(fileInputStream, fileOutputStream); IOUtil.closeQuietly(fileInputStream); IOUtil.closeQuietly((Closeable) fileOutputStream); return true; } catch (Throwable th3) { th = th3; fileInputStream2 = fileOutputStream; LogUtil.d(th.getMessage(), th); return false; } } catch (Throwable th4) { th = th4; fileInputStream = fileInputStream2; LogUtil.d(th.getMessage(), th); return false; } } public static boolean deleteFileOrDir(File file) { if (file == null || !file.exists()) { return true; } if (file.isFile()) { return file.delete(); } File[] listFiles = file.listFiles(); if (listFiles != null) { for (File file2 : listFiles) { deleteFileOrDir(file2); } } return file.delete(); } public static Boolean existsSdcard() { return Boolean.valueOf(Environment.getExternalStorageState().equals("mounted")); } public static File getCacheDir(String str) { File externalCacheDir; File file = (!isDiskAvailable() || (externalCacheDir = x.app().getExternalCacheDir()) == null) ? null : new File(externalCacheDir, str); if (file == null) { file = new File(x.app().getCacheDir(), str); } if (file.exists() || file.mkdirs()) { return file; } return null; } public static long getDiskAvailableSize() { long j; long j2; if (!existsSdcard().booleanValue()) { return 0; } StatFs statFs = new StatFs(Environment.getExternalStorageDirectory().getAbsolutePath()); if (Build.VERSION.SDK_INT >= 18) { j = statFs.getBlockSizeLong(); j2 = statFs.getAvailableBlocksLong(); } else { j = (long) statFs.getBlockSize(); j2 = (long) statFs.getAvailableBlocks(); } return j2 * j; } public static long getFileOrDirSize(File file) { long j = 0; if (!file.exists()) { return 0; } if (!file.isDirectory()) { return file.length(); } File[] listFiles = file.listFiles(); if (listFiles != null) { for (File file2 : listFiles) { j += getFileOrDirSize(file2); } } return j; } public static boolean isDiskAvailable() { return getDiskAvailableSize() > 10485760; } }