java创建文件夹,文件;删除文件夹,文件

java创建文件夹,文件;删除文件夹,文件
2008年09月05日 08:56

package ifpre.web;

import gxdmif.GXStringUtil;

import java.io.DataOutputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.InputStream;

import org.springframework.web.multipart.MultipartFile;

public   class SaveFile   {
     public   boolean save(String path, MultipartFile file) throws Exception   {
        GXStringUtil gx =   new GXStringUtil();
         boolean result =   false ;
        File dirFile = null ;
         try {
            dirFile =   new File(path);
             if ( ! (dirFile.exists()) &&   ! (dirFile.isDirectory())) {
                 boolean creadok = dirFile.mkdirs();
                 if (creadok) {
                    System.out.println( " ok:创建文件夹成功! " );
                } else {
                    System.out.println( " err:创建文件夹失败! " );                   
                }
            }
         } catch (Exception e) {
            e.printStackTrace();
            System.out.println(e);
             return   false ;
        }
          if (file !=   null   &&   ! file.isEmpty())   {
            String fullPath = path + System.getProperty( " file.separator " )
                     + gx.netStringToGBK(file.getOriginalFilename());
            DataOutputStream out =   null ;
            InputStream is =   null ;
             try    {
                out =   new DataOutputStream( new FileOutputStream(fullPath));
                is = file.getInputStream();
                 byte [] buffer =   new   byte [ 1024 ];
                 while (is.read(buffer) >   0 )   {
                    out.write(buffer);
                }
             }   finally    {
                 if (is !=   null )   {
                    is.close();
                }
                  if (out !=   null )   {
                    out.close();
                }
            }
            result =   true ;
        }
         return result;
    }

      public   boolean delete(String path, MultipartFile file) throws Exception   {
        GXStringUtil gx =   new GXStringUtil();
         boolean result =   false ;
         if (file !=   null   &&   ! file.isEmpty())   {
            String fullPath = path + System.getProperty( " file.separator " )
                     + gx.netStringToGBK(file.getOriginalFilename());
             try    {
                File file2 =   new File(fullPath);
                file2.delete();
                result =   true ;
            }   catch (Exception e)   {
                e.printStackTrace();
                result =   false ;
            }
        }
         return result;
    }
   
     public     boolean    deleteFolder(File   folder)     {
         boolean result =   false ;
         try {
              String   childs[]    =    folder.list();
               if    (childs    ==     null     ||    childs.length    <=     0 )     {
                         if (folder.delete()) {
                            result =   true ;
                        }
               }   else {
                   for    ( int    i    =     0 ;   i    <    childs.length;   i ++ )     {
                          String   childName    =    childs[i];
                          String   childPath    =  
                              folder.getPath()    +    File.separator    +    childName;
                          File   filePath    =     new    File(childPath);
                           if    (filePath.exists()    &&    filePath.isFile())     {
                                 if (filePath.delete()) {
                                    result =   true ;
                                } else {
                                    result =   false ;
                                     break ;
                                }
                          }  
                           else     if    (filePath.exists()    &&    filePath.isDirectory())     {
                                 if (deleteFolder(filePath)) {
                                    result =   true ;
                                } else {
                                    result =   false ;
                                     break ;
                                }
                          }  
                  }
                }
      
              folder.delete();
          } catch (Exception e) {
              e.printStackTrace();
              result =   false ;
          }
         return result;
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值