cms.service.impl.UploadServiceImpl.java Source code

Java tutorial

Introduction

Here is the source code for cms.service.impl.UploadServiceImpl.java

Source

/**
 * 
 * Licensed under the Apache License, Version 2.0 (the "License");
 * 
 * Founder admin@love320.com
 * 
 * http://www.love320.com
 */
package cms.service.impl;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Date;

import net.sourceforge.pinyin4j.PinyinHelper;
import net.sourceforge.pinyin4j.format.HanyuPinyinOutputFormat;
import net.sourceforge.pinyin4j.format.HanyuPinyinToneType;
import net.sourceforge.pinyin4j.format.exception.BadHanyuPinyinOutputFormatCombination;

import org.apache.commons.io.FilenameUtils;
import org.springframework.stereotype.Service;
import org.springframework.web.context.ContextLoader;
import cms.service.UploadService;

/*
 * 
 * */

@Service
public class UploadServiceImpl implements UploadService {

    // 
    private String SitePath = ContextLoader.getCurrentWebApplicationContext().getServletContext().getRealPath("/");

    // 
    private String uploadPath = "uploads";

    public Boolean uploadFile(File upload, String dirPath, String uploadFileName) {
        //System.out.println("uploadsFileName:"+uploadFileName);
        if (upload != null) {
            try {
                byte[] b = new byte[1024];
                FileInputStream fis = new FileInputStream(upload);

                FileOutputStream fos = new FileOutputStream(
                        SitePath + uploadPath + "/" + dirPath + "/" + uploadFileName);
                int len = 0;
                while ((len = fis.read(b)) > 0) {
                    fos.write(b, 0, len);
                }

                fis.close();
                fos.close();

            } catch (FileNotFoundException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }

        }
        return true;
    }

    public Boolean uploadFile(File inFile, String uploadFileName) {
        //???
        Date Mytime = new Date();
        String dir = "Love" + String.format("%ty%tm%td", Mytime.getTime(), Mytime.getTime(), Mytime.getTime());
        dir = mkdir(dir);
        return uploadFile(inFile, dir, uploadFileName);
    }

    public String mkdir(String dirStr) {
        // ???
        // System.out.println(mdf);
        // ?
        File Updir = new File(SitePath + uploadPath + "/" + dirStr + "/");
        if (!Updir.exists()) {
            // 
            Updir.mkdir();
        }
        return dirStr;
    }

    public String reName(String fileName) {
        if ((fileName != null) && (fileName.trim().length() > 0)) {

            fileName = FilenameUtils.getName(fileName);
            // ??
            HanyuPinyinOutputFormat format = new HanyuPinyinOutputFormat();// ?
            format.setToneType(HanyuPinyinToneType.WITHOUT_TONE);// ?
            try {
                fileName = PinyinHelper.toHanyuPinyinString(fileName, format, "");
            } catch (BadHanyuPinyinOutputFormatCombination e) {
                e.printStackTrace();
            }

            Date Mytime = new Date();

            // ????
            // fileName =
            // "love"+String.format("%tH%tM",Mytime.getTime(),Mytime.getTime())+"."+uploadContentType.split("/")[1].toString();
            fileName = "love" + String.format("%tH%tM%tS", Mytime.getTime(), Mytime.getTime(), Mytime.getTime())
                    + fileName;

        }
        //System.out.println("fileName:"+fileName);
        return fileName;
    }

}