首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > 移动开发 >

资料操作类

2012-06-26 
文件操作类import android.graphics.Bitmapimport android.graphics.Bitmap.CompressFormatimport andro

文件操作类

import android.graphics.Bitmap;import android.graphics.Bitmap.CompressFormat;import android.text.TextUtils;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.io.OutputStream;import java.io.PrintStream;import java.nio.channels.FileChannel;import java.nio.channels.WritableByteChannel; public class FileUtil{  public static File copyFile(String paramString1, String paramString2)  {    File localFile;    try    {      Object localObject1 = new File(paramString1);      if (!((File)localObject1).exists())      {        localFile = null;      }      else      {        localFile = new File(paramString2);        if (!localFile.exists())          localFile.createNewFile();        localObject1 = new FileInputStream((File)localObject1);        Object localObject2 = new FileOutputStream(localFile);        localObject1 = ((FileInputStream)localObject1).getChannel();        localObject2 = ((FileOutputStream)localObject2).getChannel();        while (true)        {          if (((FileChannel)localObject1).position() == ((FileChannel)localObject1).size())          {            ((FileChannel)localObject1).close();            ((FileChannel)localObject2).close();            localFile = localFile;            break label170;          }          if (((FileChannel)localObject1).size() - ((FileChannel)localObject1).position() >= 20971520L)            break;          int i = (int)(((FileChannel)localObject1).size() - ((FileChannel)localObject1).position());          ((FileChannel)localObject1).transferTo(((FileChannel)localObject1).position(), i, (WritableByteChannel)localObject2);          ((FileChannel)localObject1).position(((FileChannel)localObject1).position() + i);        }      }    }    catch (Exception localException)    {      while (true)      {        localFile = null;        break;        int j = 20971520;      }    }    label170: return (File)(File)localFile;  }   public static boolean copyFile(String paramString, FileOutputStream paramFileOutputStream)  {    int j;    try    {      File localFile = new File(paramString);      int i;      if (!localFile.exists())      {        i = 0;      }      else      {        FileChannel localFileChannel2 = new FileInputStream(i).getChannel();        FileChannel localFileChannel1 = paramFileOutputStream.getChannel();        while (true)        {          if (localFileChannel2.position() == localFileChannel2.size())          {            localFileChannel2.close();            localFileChannel1.close();            j = 1;            break label133;          }          if (localFileChannel2.size() - localFileChannel2.position() >= 20971520L)            break;          int k = (int)(localFileChannel2.size() - localFileChannel2.position());          localFileChannel2.transferTo(localFileChannel2.position(), k, j);          localFileChannel2.position(localFileChannel2.position() + k);        }      }    }    catch (Exception localException)    {      while (true)      {        j = 0;        break;        int m = 20971520;      }    }    label133: return j;  }   public static boolean deleteDirectory(File paramFile)  {    if ((paramFile != null) && (paramFile.isDirectory()))    {      File[] arrayOfFile = paramFile.listFiles();      int j = arrayOfFile.length;      int i = 0;      while (true)        if (i >= j)        {          if (paramFile.delete())            i = 1;          else            i = 0;        }        else        {          if (!arrayOfFile[i].isDirectory())          {            if (!arrayOfFile[i].delete())            {              i = 0;              break;            }          }          else            if (!deleteDirectory(arrayOfFile[i]))              break label81;          i++;          continue;          label81: i = 0;        }      return i;    }    throw new IllegalArgumentException("Argument " + paramFile + " is not a directory. ");  }   public static boolean deleteDirectory(String paramString)  {    return deleteDirectory(new File(paramString));  }   public static boolean emptyDirectory(File paramFile)  {    File[] arrayOfFile = paramFile.listFiles();    int i = 1;    for (int j = 0; ; j++)    {      if (j >= arrayOfFile.length)        return i;      if (arrayOfFile[j].delete())        continue;      i = 0;    }  }   public static boolean emptyDirectory(String paramString)  {    return emptyDirectory(new File(paramString));  }   public static byte[] getFileData(String paramString)  {    Object localObject;    if (TextUtils.isEmpty(paramString))      localObject = null;    while (true)    {      return localObject;      localObject = new File(paramString);      if (!((File)localObject).exists())      {        localObject = null;        continue;      }      try      {        FileInputStream localFileInputStream = new FileInputStream((File)localObject);        localObject = new byte[localFileInputStream.available()];        Exception localException2;        try        {          localFileInputStream.read(localObject, 0, localObject.length);          localFileInputStream.close();        }        catch (Exception localException2)        {          localObject = localObject;          localException2 = localException1;        }        localException2.printStackTrace();        localObject = localObject;      }      catch (Exception localException3)      {        while (true)          localObject = null;      }    }  }   public static String getFileName(String paramString)  {    return new File(paramString).getName();  }   public static String getFilePath(String paramString)  {    return new File(paramString).getAbsolutePath();  }   public static long getFileSize(String paramString)  {    return new File(paramString).length();  }   public static String getFileType(File paramFile)  {    return getTypePart(paramFile.getName());  }   public static String getNamePart(String paramString)  {    int i = getPathLsatIndex(paramString);    int k = paramString.length();    String str;    if (i != -1)    {      if (i != k - 1)      {        str = paramString.substring(i + 1);      }      else      {        int j = getPathLsatIndex(paramString, str - 1);        if (j != -1)          str = paramString.substring(j + 1, str);        else if (k != 1)          str = paramString.substring(0, str);        else          str = paramString;      }    }    else      str = paramString;    return str;  }   public static String getNamePartWithoutType(String paramString)  {    String str1 = getNamePart(paramString);    String str2 = getTypePart(paramString);    return str1.substring(0, str1.length() - (1 + str2.length()));  }   public static int getPathIndex(String paramString)  {    int i = paramString.indexOf('/');    if (i == -1)      i = paramString.indexOf('\\');    return i;  }   public static int getPathIndex(String paramString, int paramInt)  {    int i = paramString.indexOf('/', paramInt);    if (i == -1)      i = paramString.indexOf('\\', paramInt);    return i;  }   public static int getPathLsatIndex(String paramString)  {    int i = paramString.lastIndexOf('/');    if (i == -1)      i = paramString.lastIndexOf('\\');    return i;  }   public static int getPathLsatIndex(String paramString, int paramInt)  {    int i = paramString.lastIndexOf('/', paramInt);    if (i == -1)      i = paramString.lastIndexOf('\\', paramInt);    return i;  }   public static String getPathPart(String paramString)  {    int k = getPathLsatIndex(paramString);    int i = paramString.length();    String str2;    if (k != -1)    {      if (k != i - 1)      {        String str1 = paramString.substring(0, k);      }      else      {        int j = getPathLsatIndex(paramString, k - 1);        if (j != -1)          str2 = paramString.substring(0, j);        else          str2 = "";      }    }    else      str2 = "";    return str2;  }   public static String getSubpath(String paramString1, String paramString2)  {    int i = paramString2.indexOf(paramString1);    String str;    if (i == -1)      str = paramString2;    else      str = paramString2.substring(1 + (str + paramString1.length()));    return str;  }   public static String getTypePart(String paramString)  {    int j = paramString.lastIndexOf('.');    int i = paramString.length();    String str;    if ((j != -1) && (j != i - 1))      str = paramString.substring(j + 1, i);    else      str = "";    return str;  }   public static String getUNIXfilePath(String paramString)  {    return toUNIXpath(new File(paramString).getAbsolutePath());  }   public static boolean isFileExist(String paramString)  {    return new File(paramString).isFile();  }   public static boolean makeDirectory(File paramFile)  {    File localFile = paramFile.getParentFile();    boolean bool;    if (localFile == null)      bool = false;    else      bool = bool.mkdirs();    return bool;  }   public static boolean makeDirectory(String paramString)  {    return makeDirectory(new File(paramString));  }   public static boolean renameFile(String paramString1, String paramString2)  {    return new File(paramString1).renameTo(new File(paramString2));  }   public static String toUNIXpath(String paramString)  {    return paramString.replace('\\', '/');  }   public static void touch(File paramFile)  {    long l = System.currentTimeMillis();    if (!paramFile.exists())    {      System.err.println("file not found:" + paramFile.getName());      System.err.println("Create a new file:" + paramFile.getName());    }    try    {      boolean bool = paramFile.createNewFile();      if ((!bool) || (!paramFile.setLastModified(l)));      return;    }    catch (IOException localIOException)    {      while (true)        localIOException.printStackTrace();    }  }   public static void touch(String paramString)  {    touch(new File(paramString));  }   public static void touch(File[] paramArrayOfFile)  {    for (int i = 0; ; i++)    {      if (i >= paramArrayOfFile.length)        return;      touch(paramArrayOfFile);    }  }   public static void touch(String[] paramArrayOfString)  {    File[] arrayOfFile = new File[paramArrayOfString.length];    for (int i = 0; ; i++)    {      if (i >= paramArrayOfString.length)      {        touch(arrayOfFile);        return;      }      arrayOfFile[i] = new File(paramArrayOfString[i]);    }  }   public static String trimType(String paramString)  {    int i = paramString.lastIndexOf(".");    String str;    if (i == -1)      str = paramString;    else      str = paramString.substring(0, str);    return str;  }   public void saveBitmap(Bitmap paramBitmap, String paramString)    throws IOException  {    Object localObject = new File(paramString);    try    {      localObject = new FileOutputStream((File)localObject);      if (paramBitmap.compress(Bitmap.CompressFormat.JPEG, 100, (OutputStream)localObject))      {        ((FileOutputStream)localObject).flush();        ((FileOutputStream)localObject).close();      }      return;    }    catch (FileNotFoundException localFileNotFoundException)    {      while (true)        localFileNotFoundException.printStackTrace();    }    catch (IOException localIOException)    {      while (true)        localIOException.printStackTrace();    }  }}
?

热点排行