`
段海波
  • 浏览: 318304 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

struts2实现文件上传的工具类

    博客分类:
  • j2ee
阅读更多

FileTool.java

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Calendar;
import java.util.Locale;

/**
 * 文件操作工具類
 * 
 * @author fengyapeng
 * @time: 2011-4-11 下午03:40:41
 * @Company:oddtech
 */
public class FileTool {

	private static int i;

	public static boolean copyFile(String resourceFimeName,
			String targetFileName) throws IOException {

		return copyFile(new File(resourceFimeName), new File(targetFileName));
	}

	/**
	 * 文件拷貝
	 * 
	 * @param resourceFimeName
	 *            源文件的路徑名稱
	 * @param targetFile
	 *            目的文件
	 * @return
	 * @throws IOException
	 */
	public static boolean copyFile(String resourceFimeName, File targetFile)
			throws IOException {
		return copyFile(new File(resourceFimeName), targetFile);
	}

	/**
	 * 文件拷貝
	 * 
	 * @param resourceFile
	 *            源文件
	 * @param targetFileName
	 *            目的文件的路徑名稱
	 * @return
	 * @throws IOException
	 */
	public static boolean copyFile(File resourceFile, String targetFileName)
			throws IOException {
		return copyFile(resourceFile, new File(targetFileName));
	}

	/**
	 * 文件拷貝
	 * 
	 * @param resourceFile
	 *            源文件
	 * @param targetFile
	 *            目的文件
	 * @return
	 * @throws IOException
	 */
	public static boolean copyFile(File resourceFile, File targetFile)
			throws IOException {
		if (resourceFile == null || targetFile == null)
			return false;

		if (resourceFile.exists()) {
			if (!targetFile.exists()) {
				File parentFile = targetFile.getParentFile();
				if (!parentFile.exists())
					parentFile.mkdirs();
				targetFile.createNewFile();
			}
			FileInputStream in = new FileInputStream(resourceFile);
			FileOutputStream out = new FileOutputStream(targetFile);
			byte[] buffer = new byte[1024 * 8];
			int i = 0;

			while ((i = in.read(buffer)) != -1) {
				out.write(buffer, 0, i);
			}
			out.flush();
			return true;

		} else {
			return false;
		}
	}

	/**
	 * 文件刪除,
	 * 
	 * @param fileName
	 *            文件的路徑
	 */
	public static void deleteFile(String fileName) {
		if (fileName != null) {
			deleteFile(new File(fileName));
		}
	}

	/**
	 * 文件刪除
	 * 
	 * @param file
	 *            文件
	 */
	public static void deleteFile(File file) {
		if (file != null && file.exists()) {
			System.out.println(file.delete());
		}
	}

	/**
	 * 按照當前時間命名上傳的文件名
	 */
	public static String getFileNameByTime() {
		Calendar date = Calendar.getInstance(Locale.CHINESE);
		StringBuffer fileName = new StringBuffer();
		if (i == 100)
			i = 0;
		if (i <= 9) {

			fileName.append(date.get(Calendar.YEAR))
					.append(date.get(Calendar.MONTH) + 1)
					.append(date.get(Calendar.DAY_OF_MONTH))
					.append(date.get(Calendar.HOUR_OF_DAY))
					.append(date.get(Calendar.MINUTE))
					.append(date.get(Calendar.MILLISECOND)).append("00")
					.append(i);
		} else {
			fileName.append(date.get(Calendar.YEAR))
					.append(date.get(Calendar.MONTH) + 1)
					.append(date.get(Calendar.DAY_OF_MONTH))
					.append(date.get(Calendar.HOUR_OF_DAY))
					.append(date.get(Calendar.MINUTE))
					.append(date.get(Calendar.MILLISECOND)).append("0")
					.append(i);
		}

		System.out.println(date.toString());
		return fileName.toString();

	}
}
 
分享到:
评论

相关推荐

    struts2文件上传jar

    这个压缩包包含了实现Struts2文件上传所需的全部jar包,这些库文件对于理解和实现文件上传功能至关重要。 首先,我们要了解Struts2文件上传的基本流程。当用户通过表单提交包含文件输入字段的请求时,Struts2框架会...

    struts与hibernate实现文件的上传与动态下载

    通过以上步骤,你可以实现一个基于Struts2和Hibernate的文件上传与动态下载系统。这个系统能够处理用户上传的文件,将其保存到服务器,同时提供动态下载功能,允许用户根据需要下载文件。在实际开发中,还需要考虑...

    Struts2实现文件上传

    Struts2提供了内置的支持来处理文件上传请求,使得开发人员能够方便地实现这一功能。 在Struts2中,文件上传主要依赖于Apache的Commons FileUpload库,这是一个专门用于处理HTTP多部分请求(multipart/form-data)...

    Struts2实现多文件上传

    在Struts2中,实现多文件上传功能是常见的需求,尤其在处理用户需要上传多个文件的场景下,如上传图片、文档等。本篇文章将详细介绍如何使用Struts2来实现这一功能。 首先,我们需要理解Struts2的上传机制。在...

    实现struts2的文件上传文件功能

    总结,实现Struts2的文件上传功能需要配置Struts2拦截器、创建正确的HTML表单、编写处理文件上传的Action类以及处理可能出现的异常情况。这个过程涉及到了Web开发中的前端交互、后端处理和错误处理等多个方面,是...

    jquery+struts2实现文件上传

    在本文中,我们将深入探讨如何使用jQuery和Struts2框架实现文件上传功能。这是一个常见的需求,在Web应用中,用户可能需要上传图片、文档等文件。jQuery是一个轻量级的JavaScript库,提供了丰富的交互效果和API,而...

    struts2文件上传源码和步骤

    在 Struts2 中,文件上传功能是通过特定的拦截器(`FileUploadInterceptor`)来实现的。以下是对标题和描述中所述知识点的详细解释: 1. **文件上传原理**: 文件上传的本质是客户端浏览器将本地文件以二进制流的...

    Struts2实现文件上传下载

    以上是Struts2实现文件上传和下载的基本步骤和关键概念。在实际应用中,你可能还需要考虑性能优化、错误处理、用户体验等方面。阅读博文(https://chenzheng8975.iteye.com/blog/1733841)将为你提供更具体的实现...

    struts2+ajax文件进度条的实现

    在Struts2中实现文件上传功能,通常会涉及到处理大文件、用户体验优化等问题,如显示文件上传进度条。这个场景下,我们结合Ajax技术,可以创建一个实时反馈文件上传进度的动态界面,提升用户交互体验。 首先,我们...

    struts2实现文件上传

    在Struts2中实现文件上传是一项常见的需求,这通常涉及到处理用户通过表单提交的文件数据。本篇将深入探讨如何在Struts2中实现文件上传功能。 首先,我们需要在前端创建一个HTML表单,允许用户选择要上传的文件。...

    struts2文件上传下载

    在这个特定的项目中,我们关注的是"struts2文件上传下载"的功能,这涉及到用户通过Web界面上传文件到服务器,以及从服务器下载文件到用户的设备。 文件上传是Web应用中的常见需求,例如用户可能需要提交图片、文档...

    struts2 实现文件、图片 上传

    首先,我们需要在Struts2的配置文件(struts.xml)中添加相应的action配置,以处理文件上传请求。以下是一个简单的示例: ```xml &lt;package name="default" namespace="/" extends="struts-default"&gt; ...

    struts2 文件上传

    在本篇中,我们将深入探讨Struts2实现文件上传的原理、步骤以及需要注意的关键点。 首先,理解文件上传的基本流程: 1. 用户在表单中选择文件,并提交表单。 2. Struts2 框架接收到请求,解析请求体中的文件数据。...

    Struts2 实现文件简单上传

    以上就是Struts2实现文件简单上传的基本步骤。在实际应用中,我们还需要考虑错误处理、文件大小限制、文件类型检查、文件重命名以避免冲突等问题。此外,还可以通过整合Spring框架来管理Action类,或者使用第三方库...

    Struts+swfupload实现文件上传功能

    Struts和SwfUpload是两种在Web开发中用于构建强大功能的应用工具,它们结合使用可以实现高效的文件上传功能。在本文中,我们将深入探讨这两个组件以及如何将它们整合以实现文件上传。 首先,Struts是一个基于MVC...

    struts2文件上传下载实例

    在“struts2文件上传下载实例”中,我们将探讨如何在Struts2框架下实现文件的上传和下载功能,这对于许多Web应用程序来说是必不可少的特性。 首先,`pom.xml`文件是Maven项目对象模型的配置文件,它定义了项目的...

    Struts2多文件上传

    本篇文章将深入探讨如何在Struts2框架下实现多文件上传,并基于提供的"Struts2_10"压缩包文件进行详细说明。 首先,我们需要确保Struts2的核心库已经添加到项目的类路径中,通常这通过Maven或Gradle等构建工具来...

    Struts上传文件实现代码

    总结来说,Struts2实现文件上传涉及到Action配置、Action类的编写、文件解析和保存、以及前端表单的设计。在实际开发中,还需要考虑异常处理、文件大小限制、文件类型的检查等安全性问题。通过这样的流程,我们可以...

Global site tag (gtag.js) - Google Analytics