package cn.ibabyzone.library;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import android.app.Activity;import android.os.Environment;import android.util.Log;//用户数据读写函数//存在SD卡时数据从SD卡读写不存在时通过DATA目录读写public class FileUtils{private String SDPATH;private int FILESIZE = 1;public String getSDPATH(){return SDPATH;}public FileUtils(Activity thisActivity){if(android.os.Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED)){SDPATH = Environment.getExternalStorageDirectory() + "/ibabyzone/";}else{SDPATH= thisActivity.getFilesDir().toString() + "/ibabyzone/";}}/** * 在SD卡上创建文件 */public File creatSDFile(String fileName) throws IOException{File file = new File(SDPATH + fileName);file.createNewFile();return file;}public void delFolder(String folderPath) {        try {                delAllFile(folderPath); //删除完里面所有内容                String filePath = folderPath;                filePath = filePath.toString();                java.io.File myFilePath = new java.io.File(filePath);                myFilePath.delete(); //删除空文件夹       }        catch (Exception e) {                System.out.println("删除文件夹操作出错");                e.printStackTrace();       }}/** * 删除文件夹里面的所有文件 * @param path String 文件夹路径 如 c:/fqf */public void delAllFile(String path) {        File file = new File(path);        if (!file.exists()) {                return;        }        if (!file.isDirectory()) {       return;        }        String[] tempList = file.list();        File temp = null;        for (int i = 0; i < tempList.length; i++) {                if (path.endsWith(File.separator)) {                        temp = new File(path + tempList[i]);                }                else {                        temp = new File(path + File.separator + tempList[i]);                }                if (temp.isFile()) {                        temp.delete();                }                if (temp.isDirectory()) {                        delAllFile(path+"/"+ tempList[i]);//先删除文件夹里面的文件                        delFolder(path+"/"+ tempList[i]);//再删除空文件夹                }        }} /** * 在SD卡上创建目录 */public File creatSDDir(String dirName){File dir = new File(SDPATH + dirName);dir.mkdir();return dir;}/** * 判断SD卡上的文件夹是否存在 */public boolean isFileExist(String fileName){File file = new File(SDPATH + fileName);return file.exists();}public long file_time(String fileName){File file = new File(SDPATH + fileName);return file.lastModified();}/** * 将一个InputStream里面的数据写入到SD卡中 */public File write2SDFromInput(String path, String fileName,InputStream input){File file = null;OutputStream output = null;try{creatSDDir(path);file = creatSDFile(path + fileName);output = new FileOutputStream(file);byte[] buffer = new byte[FILESIZE];while ((input.read(buffer)) != -1){output.write(buffer);}output.flush();}catch (Exception e){e.printStackTrace();}finally{try{output.close();}catch (Exception e){e.printStackTrace();}}return file;}public static void deleteFile(String fileStr) {File file = new File(fileStr);if (file.exists()) { // 判断文件是否存在if (file.isFile()) { // 判断是否是文件file.delete(); // delete()方法 你应该知道 是删除的意思;}file.delete();}}public void delFile(String path) {String str = SDPATH+path;File file = new File(str);if (file.exists()) {file.delete();}}public int CopyFileToFile(File fromFile, File toFile) {try {InputStream fosfrom = new FileInputStream(fromFile);OutputStream fosto = new FileOutputStream(toFile);byte bt[] = new byte[1024];int c;while ((c = fosfrom.read(bt)) > 0) {fosto.write(bt, 0, c);}fosfrom.close();fosto.close();return 0;} catch (Exception ex) {return -1;}}public File CopyFileRomToSD(String romfile){if(!android.os.Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED)){return null;}File rom = new File(romfile);File sd = new File(Environment.getExternalStorageDirectory() + "/ibabyzone/"+romfile);if(CopyFileToFile(rom,sd) == 0){return sd;}return null;}}

更多相关文章

  1. NPM 和webpack 的基础使用
  2. 【阿里云镜像】使用阿里巴巴DNS镜像源——DNS配置教程
  3. Unity3d 调用Android震动
  4. Android(安卓)Dex文件结构
  5. Android(安卓)Room 数据库
  6. Android(安卓)通过HTTP POST 上传图片文件
  7. Android(安卓)studio 3.0和unity交互 Manifest文件修改后正确的
  8. Android中可以做的两件坏事---破解锁屏密码和获取Wifi密码
  9. Android(安卓)Okhttp 断点续传面试解析

随机推荐

  1. 综合运用DID, RD的一篇准自然实验, 看看R
  2. 基于Hadoop的58同城离线计算平台设计与实
  3. C语言指针的理解
  4. 诺奖得主五因子定价模型的国际检验, 做金
  5. 诺奖得主Akerlof 猛批“遗漏之罪与经济学
  6. Bandit算法在携程推荐系统中的应用与实践
  7. iOS面试题,性能优化篇!
  8. 实证应用经济学中的稳健性检验是什么? 怎
  9. AI与人,“替代”还是 “共生”
  10. 双胞胎数据! 中国父母把子女当一种理性投