`

FileUtil

 
阅读更多
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.List;

import org.springframework.web.multipart.MultipartFile;


public class FileUtil {


    /**
     *
     * @param fileName  文件名
     * @param filecontent  加密后内容
     * @return
     */
    public static byte[] createFile(String fileName,String filecontent){
        Boolean bool = false;
        /*File file = new File(fileName);*/
        try {
            /*//如果文件不存在,则创建新的文件
            if(!file.exists()){
                file.createNewFile();
                bool = true;
                System.out.println("success create file,the file is "+fileName);
                //创建文件成功后,写入内容到文件里
                return writeFileContent(fileName, filecontent);
            }else{
                file.delete();
                file.createNewFile();
                bool = true;
                System.out.println("success create file,the file is "+fileName);
                //创建文件成功后,写入内容到文件里
                return writeFileContent(fileName, filecontent);
            }*/
            return writeFileContent(fileName, filecontent);
        } catch (Exception e) {
            e.printStackTrace();
        }

        return null;
    }


    public static byte[] writeFileContent(String filepath,String newstr) throws IOException {
        String filein = newstr+"\r\n";//新写入的行,换行
        StringBuffer buffer = new StringBuffer();
        try{
            buffer.append(filein);
            return buffer.toString().getBytes();
        } catch (Exception e) {
            // TODO: handle exception
            e.printStackTrace();
        }
        return null;
    }



    public static byte[] File2byte( File file)
    {
        byte[] buffer = null;
        try
        {
            FileInputStream fis = new FileInputStream(file);
            ByteArrayOutputStream bos = new ByteArrayOutputStream();
            byte[] b = new byte[1024];
            int n;
            while ((n = fis.read(b)) != -1)
            {
                bos.write(b, 0, n);
            }
            fis.close();
            bos.close();
            buffer = bos.toByteArray();
        }
        catch (FileNotFoundException e)
        {
            e.printStackTrace();
        }
        catch (IOException e)
        {
            e.printStackTrace();
        }
        return buffer;
    }


    /**
     * @param fileName
     * @return
     */
    public static String getFileType(String fileName) {
        String type = "";
        if (fileName.contains(".")) {
            type = fileName.substring(fileName.lastIndexOf(".") + 1);
            return type;
        } else {
            return "";
        }
    }


    //获取生成文件的file
    public static File getFile(MultipartFile imgFile, String brandName, List<String> fileTypes) {
        String fileName = imgFile.getOriginalFilename();
        // 获取上传文件类型的扩展名,先得到.的位置,再截取从.的下一个位置到文件的最后,最后得到扩展名
        String ext = fileName.substring(fileName.lastIndexOf(".") + 1,
                fileName.length());
        // 对扩展名进行小写转换
        ext = ext.toLowerCase();
        File file = null;
        if (fileTypes.contains(ext)) { // 如果扩展名属于允许上传的类型,则创建文件
            file = creatFolder(brandName, fileName);
            try {
                imgFile.transferTo(file); // 保存上传的文件
            } catch (IllegalStateException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            }
            // this.scale(file);
        }
        return file;
    }
    //生成文件
    public static File creatFolder(String brandName, String fileName) {
        File file = null;
        File firstFolder = new File(brandName);

        if (firstFolder.exists()) { // 如果一级文件夹存在,则检测二级文件夹
            file = new File(brandName + "\\"+ fileName);
        } else { // 如果一级不存在,则创建一级文件夹
            firstFolder.mkdir();
            file = new File(brandName + "\\" + fileName);
        }
        return file;
    }

    public  static String compare(String str) {
        String re = str;
        int m = 0;
        int n = 0;

        int x =0;
        int y =0;

        if(str ==" "){
            return re;
        }
        else{
            char c [] = str.toCharArray();
            for(int i=0;i<c.length;i++){

                StringBuffer sb= new StringBuffer();
                sb.append(c[i]);
                if(sb.toString().equals("(")){
                    m = i;
                }
                if(sb.toString().equals(")")){
                    n = i;
                }

                if(sb.toString().equals("(")){
                    x = i;
                }
                if(sb.toString().equals(")")){
                    y = i;
                }
            }
            if(m!=0&&n!=0){
                StringBuffer s = new StringBuffer();
                for (int i = 0; i < m; i++) {
                    s.append(c[i]);
                }

                for (int j = n+1; j < c.length; j++) {
                    s.append(c[j]);
                }

                re = s.toString();
            }

            if(x!=0&&y!=0){
                StringBuffer s = new StringBuffer();
                for (int i = 0; i < x; i++) {
                    s.append(c[i]);
                }

                for (int j = y+1; j < c.length; j++) {
                    s.append(c[j]);
                }
                re = s.toString();
            }



        }
        return re;
    }
    /**
     * 先根遍历序递归删除文件夹
     *
     * @param dirFile 要被删除的文件或者目录
     * @return 删除成功返回true, 否则返回false
     */
    public static boolean deleteFile(File dirFile) {
        // 如果dir对应的文件不存在,则退出
        if (!dirFile.exists()) {
            return false;
        }

        if (dirFile.isFile()) {
            return dirFile.delete();
        } else {

            for (File file : dirFile.listFiles()) {
                deleteFile(file);
            }
        }

        return dirFile.delete();
    }
    
    public static void main(String[] args) throws Exception
    {

    }
}

 

分享到:
评论

相关推荐

    FileUtil(文件操作工具类)

    在Java编程中,`FileUtil`通常是一个自定义的工具类,用于封装常见的文件操作,以便在项目中方便地处理文件。这个类可以提供一系列静态方法,帮助开发者执行读写文件、创建、删除、移动、复制文件等任务,极大地提高...

    FileUtil类文件整理

    在Java编程语言中,`FileUtil`类通常是由开发者自定义的一个工具类,用于封装对文件和目录的操作,以提供更便捷、安全的文件处理功能。这个类可能会包含各种静态方法,用来创建、读取、写入、删除、移动、复制文件...

    Base64Util、FileUtil、GsonUtils、HttpUtil

    在给出的标题和描述中,我们涉及了四个关键的工具类:Base64Util、FileUtil、GsonUtils和HttpUtil。这些工具类分别用于Base64编码解码、文件操作、JSON数据处理以及HTTP请求。下面将详细介绍这四个工具类的主要功能...

    纯净的Exceptionbean和FileUtil可用于spring的案例

    在这个案例中,我们关注的是两个核心组件:`ExceptionBean`和`FileUtil`。这两个组件分别用于优雅地处理异常和简化文件操作。 首先,让我们深入理解`ExceptionBean`。在Java编程中,异常处理是必不可少的一部分。`...

    Java文件处理工具类--FileUtil

    * FileUtil. Simple file operation class. * * @author BeanSoft * */ public class FileUtil { /** * The buffer. */ protected static byte buf[] = new byte[1024]; /** * Read content from ...

    文件操作工具 FileUtil

    "FileUtil"是一个基于Qt框架的库,专门用于处理各种类型的文件,包括CSV、DBF、Excel、INI、JSON和XML等。下面将详细介绍这些文件格式以及如何使用Qt进行操作。 1. CSV(Comma Separated Values)文件: CSV是一种...

    ArrayUtil+DateUtil+FileUtil+ReguUtil+StringUtil

    这里提到的"ArrayUtil+DateUtil+FileUtil+ReguUtil+StringUtil"是五个这样的工具包,它们分别针对数组操作、日期处理、文件操作、正则表达式匹配和字符串操作提供了一系列便利的方法。 1. **ArrayUtil**: - **...

    关于文件操作的工具类 -- FileUtil

    public class FileUtil { /** * 新建目录 * @param folderPath String 如 c:/fqf * @return boolean */ public static void newFolder(String folderPath) { try { String filePath = folderPath; ...

    FileUtil.rar

    `FileUtil`工具类集合了多种文件操作功能,为开发者提供了一站式的解决方案。下面将详细介绍这个工具类中涉及的关键知识点。 首先,文件大小转换是一个常见的需求,特别是在处理大文件时。`FileUtil`可能包含了将...

    hadoop FileUtil.java 解决权限检查的问题

    org.apache.hadoop.fs.FileUtil.checkReturnValue(FileUtil.java:689) 解决这个问题后,重新生成的jar包

    FileUtil.java

    在百度官方文档的FileUtil类做了修改,函数可以直接调用,包含URI绝对路径转换,存储权限获取,根据文件路径读取Bytes数组等

    fileutil.java

    fileutil.java有需要的自己下载。

    fileutil文件通用类

    通用文件方法,方发都很通用,在java中这些都是常用的

    Xenos.zip_"blackbone" 使用_FileUtil.cpp:452:_Xenos 注入 使用_dll注入_saf

    本文将深入探讨“Xenos.zip”这个压缩包中的核心内容——一个基于“Blackbone”库开发的DLL注入工具,以及相关的“FileUtil.cpp:452”代码段。我们将讨论DLL注入的基本原理,Blackbone库的功能,以及安全性方面的...

    fileutil工具类 处理文件流工具

    fileutil工具类 处理文件流工具 private static File file; /** * 判断文件是否存在 * * @param path * 文件路径 * @return boolean */ public static boolean fileIsExists(String path) { if (path ==...

Global site tag (gtag.js) - Google Analytics