java编写的文件管理器代码分享_java

比较适合新手。逻辑上仍然有点问题。可以用于学习java文件操作

下载地址:http://yun.baidu.com/share/link?shareid=4184742416&uk=1312160419

下面是主要的JAVA文件操作代码

FileHelp.java

package self.yy.filesystem.fileutil;

import android.content.Context;
import android.util.Log;
import android.widget.Toast;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.net.URI;
import java.nio.channels.FileChannel;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.List;

/**
 * 文件的相关帮助类
 */
public class FileHelp {
  private static final String TAG = "FileHelp";

  public static final String JPG = ".jpg";
  public static final String PNG = ".png";

  public static final String MP3 = ".mp3";
  public static final String MP4 = ".mp4";
  public static final String APK = ".apk";

  //上下文
  private static Context context;

  /**
   * txt文本
   */
  public static int ISTXT = 0;

  private static String TXT = ".txt";

  /**
   * 文件删除
   */
  public static boolean deletfile(File file) {
    if (file.isDirectory()) {
      if (file.listFiles().length > 0) {
        for (File i : file.listFiles()) {
          deletfile(i);
        }
      } else {
        file.delete();
      }
    } else {
      file.delete();
    }
    file.delete();
    return true;
  }

  /**
   * 新建文件夹
   * 返回true 文件创建成功
   * 返回false 文件创建失败 ->文件存在
   * 返回true 文件创建成功,返回false 文件创建失败 (文件存在、权限不够)
   */
  public static boolean creatFile(String filename, String path) {
    File file = new File(path + File.separator + filename);
    if (file.exists()) {
      return false;
    } else {
      file.mkdir();
      return true;
    }
  }

  /**
   * 创建自定义文件类型文件
   * 随意为文件夹
   * 0 txt文本
   *
   * @return boolean
   * 返回true 文件创建成功,返回false 文件创建失败 (文件存在、权限不够)
   * *
   */
  public static boolean creatFile(String filename, String path, int type) {
    String ptr = path + File.separator + filename;
    File file;
    switch (type) {
      case 0:
        file = new File(ptr + TXT);
        break;
      default:
        file = new File(ptr);
        break;
    }
    if (file.exists()) {
      return false;
    } else {
      try {
        file.createNewFile();
        return true;
      } catch (IOException e) {
        return false;
      }
    }
  }

  /**
   * 文件重名
   *
   * @param name 新创建的文件名
   * @param file 创建文件的地方
   */
  public static boolean reName(String name, File file) {
    String pathStr = file.getParent() + File.separator + name;
    return file.renameTo(new File(pathStr));
  }

  /**
   * 文件复制
   *
   * @param oldFile  要被复制的文件
   * @param toNewPath 复制到的地方
   * @return boolean trun 复制成功,false 复制失败
   * *
   */
  public static boolean copeyFile(File oldFile, String toNewPath) {
    String newfilepath = toNewPath + File.separator + oldFile.getName();

    File temp = new File(newfilepath);
    //判断复制到的文件路径是否存在相对文件,如果存在,停止该操作
    if (temp.exists()) {
      return false;
    }
    //判断复制的文件类型是否是文件夹
    if (oldFile.isDirectory()) {
      temp.mkdir();
      for (File i : oldFile.listFiles()) {
        copeyFile(i, temp.getPath());
      }
    } else {
      //如果是文件,则进行管道复制
      try {
        //从文件流中创建管道
        FileInputStream fis = new FileInputStream(oldFile);
        FileChannel creatChannel = fis.getChannel();
        //在文件输出目标创建管道
        FileOutputStream fos = new FileOutputStream(newfilepath);
        FileChannel getChannel = fos.getChannel();
        //进行文件复制(管道对接)
        getChannel.transferFrom(creatChannel, 0, creatChannel.size());

        getChannel.close();
        creatChannel.close();
        fos.flush();
        fos.close();
        fis.close();
      } catch (Exception e) {
        Log.i(TAG, "copey defeated,mebey file was existed");
        e.printStackTrace();
        return false;
      }
    }
    return true;
  }

  /**
   * 文件剪切
   *
   * @param oldFile   要被剪切的文件
   * @param newFilePath 剪切到的地方
   * @return boolean trun 剪切成功,false 剪切失败
   */
  public static boolean cutFile(File oldFile, String newFilePath) {
    if (copeyFile(oldFile, newFilePath)) {
      oldFile.delete();
      return true;
    } else {
      return false;
    }
  }

  /**
   * 获取对应文件类型的问件集
   *
   * @param dir 文件夹
   * @param type 文件类型,格式".xxx"
   * @return List<file> 文件集合
   */
  public static List<File> getTheTypeFile(File dir, String type) {
    List<File> files = new ArrayList<File>();
    for (File i : dir.listFiles()) {
      String filesTyepe = getFileType(i);
      if (type.equals(filesTyepe)) {
        files.add(i);
      }
    }
    return files;
  }

  /**
   * 获取文件类型
   *
   * @param file 需要验证的文件
   * @return String 文件类型
   * 如:
   * 传入文件名为“test.txt”的文件
   * 返回 .txt
   * *
   */
  public static String getFileType(File file) {
    String fileName = file.getName();
    if (fileName.contains(".")) {

      String fileType = fileName.substring(fileName.lastIndexOf("."),
          fileName.length());
      return fileType;
    } else {
      return null;
    }
  }

  /**
   * 获取文件最后操作时间类
   *
   * @param file 需要查询的文件类
   * @return “yy/MM/dd HH:mm:ss”的数据字符串
   * 如:
   * 14/07/01 01:02:03
   */
  public static String getCreatTime(File file) {
    long time = file.lastModified();
    Calendar calendar = Calendar.getInstance();
    SimpleDateFormat dateFormat = new SimpleDateFormat("yy/MM/dd HH:mm:ss");
    String date = dateFormat.format(calendar.getTime());
    return date;
  }

}

以上所述就是本文的全部内容了,希望能够对大家学习java有所帮助。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索java
文件管理器
java编写文件管理器、java 文件管理器 代码、java代码编写规范、java编写计算器代码、java编写贪吃蛇代码,以便于您获取更多的相关知识。

时间: 2024-10-01 05:29:58

java编写的文件管理器代码分享_java的相关文章

自己写的java日志类和方法代码分享_java

复制代码 代码如下: import java.io.*;import java.text.SimpleDateFormat;import java.util.*;import java.util.logging.Logger; public class AndyLogger{    //The defaulted root path of SSLVPN installation     private static String rootPath = "C:\\temp2";    

java制作复制文件工具代码分享_java

复制代码 代码如下: package com.robin; import java.io.File;import java.io.FileInputStream;import java.io.FileWriter;import java.io.IOException;import java.text.SimpleDateFormat;import java.util.Date;import java.util.Properties; public class FileCopy { // priv

Java将字节转换为十六进制代码分享_java

本文部分代码摘录自网上,并稍加整理,用于字节与十六进制之间的转换. /** * reference apache commons <a * href="http://commons.apache.org/codec/">http://commons.apache.org/codec/</a> * * byte占用8位,十六进制字符占用4位.所以可以把一个byte转换成两个相应的十六进制字符,即把byte的高4位和低4位 * 分别转换成相应的十六进制字符H和L,并

java webservice上传下载文件代码分享_java

本文实例为大家分享了java webservice上传下载文件代码,供大家参考,具体内容如下 1.新建动态web工程youmeFileServer,新建包com,里面新建类FileProgress package com; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.sql.Date; import java.text.Simple

基于java编写局域网多人聊天室_java

由于需要制作网络计算机网络课程设计,并且不想搞网络布线或者局域网路由器配置等等这种完全搞不懂的东西,最后决定使用socket基于java编写一个局域网聊天室: 关于socket以及网络编程的相关知识详见我另一篇文章:Java基于socket编程 程序基于C/S结构,即客户端服务器模式. 服务器: 默认ip为本机ip 需要双方确定一个端口号 可设置最大连接人数 可启动与关闭 界面显示在线用户人以及姓名(本机不在此显示) 客户端: 需要手动设置服务器ip地址(局域网) 手动设置端口号 输入姓名 可连

jQuery 动画效果代码分享_java

一.显示.隐藏  jQuery 中显示方法为:.show(),隐藏方法为:.hide().在无参数的时候,只是硬性的显示内容和隐藏内容. $('.show').click(function(){ //设置个触发事件 $('#box').show(); //显示 }); $('.hide').click(function(){ //设置个触发事件 $('#box').hide(); //隐藏 }); 在.show()和.hide()方法可以传递一个参数,这个参数以毫秒(1000 毫秒等于 1 秒钟

Java编写的24点纸牌游戏_java

任意4个1-13数字,加减乘除计算24点. 实现原理: 1)排列组合4个数字 2)计算每次排列组合的可能性 Cal24.java import java.util.HashSet; import java.util.Set; public class Cal24 { private static final double precision = 0.00001; private static final int target = 24; public String[] execute(Strin

Java结合百度云存储BCS代码分享_java

一.简介 云也不是一个新概念了,云到底是什么东西,你叫我说个明明白白的我也说不出来,姑且算作联网的就叫做云.国内的云服务商还是有很多了,主要有两大类,一类是类似于阿里云的类主机型的云提供商,比如万网等传统空间商转过来的:还有一类是应用应用托管平台,比如BAE,SAE.相对于阿里云等空间商之类的来说,应用托管平台的入门更低,为广大的苦逼程序猿提供了一个好的测试平台.          我最近负责的软件升级程序,多平台多文件多版本,如果是自己架构文件服务器带宽肯定不能满足业务需求,于是上手百度云存储

java图片添加水印实例代码分享_java

本文为大家介绍了java图片添加水印实例代码,java实现水印还是非常方便的,水印可以是图片或者文字,具体内容如下 package michael.io.image; import java.awt.AlphaComposite; import java.awt.Graphics2D; import java.awt.Image; import java.awt.RenderingHints; import java.awt.image.BufferedImage; import java.io