`

java struts2复制文件到另一个目录下

    博客分类:
  • JAVA
阅读更多
这里主要是获取路径下的文件,通过过去此文件的文件名称,然后到目标目录下创建相同的文件名(当然可以自己自定义,我这里是为了项目需要)。再通过I/O流,将原文件写入到目标文件中去。


/**
* 复制广告里面的内容,到客户端的目录下面
* @param advPath(原文件位置)
* @throws IOException
*/
public void copyFile(String advPath) throws IOException{
int i=advPath.lastIndexOf("/");//获取路径最后一个“/”的位置
String s=advPath.substring(40,i+1).toLowerCase();//获取路径中位置40~i+1的字符串
String s1=advPath.substring(i+1);//获取 路径最后一个“/”后面的文件名称
String path=ServletActionContext.getServletContext().getRealPath("")+isexistdir(s);//获取根目录
// String savepath=isexistdir(s);
File flie= new File(path+s1);
if(!flie.exists()){
//判断此路径下的文件是否存在,不存在则重新创建
flie.createNewFile();
}
FileWriter fw = new FileWriter(flie);
PrintWriter pw = new PrintWriter(fw);
pw.println();
pw.flush();
fw.close();
int byteread=0;

InputStream in = new FileInputStream(advPath);//打开原文件
OutputStream out = new FileOutputStream(path+s1);//打开连接到目标文件的输出流
byte[] buffer = new byte[1024];  //一次读取1024字节。当byteread=-1时表示文件已经读完
while ((byteread = in.read(buffer)) != -1) { 
//将读取的字节写入输出流   
out.write(buffer, 0, byteread); 
}
out.flush();
if(out!=null){
out.close();
}
if(in!=null){
in.close();
}


}

这里的代码还是不够全面,不是很全面。我也有个一个问题,还想请大神们赐教!
String s=advPath.substring(40,i+1).toLowerCase();//获取路径中位置40~i+1的字符串
这个地方,假如 advPath="D:\alextao\elecartserver\WebContent/ADV/Picture/2013012514592153187.jpg";我想动态的获取“Picture”这个目录名称,而不是通过上面写死的了放在那里。
小弟,对于这里还没弄明白,还请各位大神赐教。
各位大神:小弟初来乍到,还请轻拍!!

3
3
分享到:
评论
4 楼 Alex-tao 2013-01-25  
it_freshman 写道
要动态获取 picture这个目录。
这个目录的名称是不是 : 倒数第二个 “/”和最后一个"/"之间的那一段字符串。
如果是的,接可以通过剪辑字符串获取到。。。
lz问的是这个问题吗?

对的,因为路径不是绝对的,所以想动态获取
3 楼 Alex-tao 2013-01-25  
net_hare 写道
如果前面的路径有规律,用正则表达式试试

有可能工作区间会变化的。不知道是否可以呢
2 楼 it_freshman 2013-01-25  
要动态获取 picture这个目录。
这个目录的名称是不是 : 倒数第二个 “/”和最后一个"/"之间的那一段字符串。
如果是的,接可以通过剪辑字符串获取到。。。
lz问的是这个问题吗?
1 楼 net_hare 2013-01-25  
如果前面的路径有规律,用正则表达式试试

相关推荐

    Struts2框架实现文件上传

    文件上传成功后,Action应返回一个结果,以便Struts2能够正确跳转到下一个视图,显示上传结果。 以上就是使用Struts2框架实现文件上传的基本步骤和涉及的知识点。在实际项目中,可能还需要考虑并发处理、性能优化...

    struts2文件上传源码和步骤

    Struts2 是一个基于 MVC 设计模式的 Java Web 开发框架,它使得创建结构清晰、易于维护的 Web 应用程序变得更加简单。在 Struts2 中,文件上传功能是通过特定的拦截器(`FileUploadInterceptor`)来实现的。以下是对...

    struts2文件上传jar

    Struts2是一个流行的Java web框架,它为开发者提供了一种结构化的方式来构建MVC(Model-View-Controller)应用程序。在Struts2中,文件上传是常见的功能,用于允许用户在网页上上传文件到服务器。这个压缩包包含了...

    struts2实现文件上传(单个+多个文件上传

    ### Struts2实现文件上传(单个+多个文件上传) #### 一、单个文件上传 ...以上就是Struts2框架下单个文件上传和多个文件上传的实现过程。希望这些示例可以帮助读者理解和实现Struts2中的文件上传功能。

    Struts2文件批量上传

    Struts2文件批量上传是Java Web开发中常见的一种功能,主要应用于网站后台处理大量用户上传的文件,如图片、文档等。Struts2是一个强大的MVC框架,它提供了丰富的功能来支持文件上传操作,包括单个文件上传和批量...

    struts2文件上传下载

    这里使用了Servlet API 3.0的`FileUtils`工具,它提供了一个方便的方法来复制文件。 4. **文件上传的数据类型** 通过`List<String> imageContentType`可以获取上传文件的MIME类型,`List<String> imageFileName`则...

    Struts2实现压缩文件上传

    Struts2是一个强大的MVC(模型-视图-控制器)框架,广泛应用于Java Web开发,它简化了构建基于Java EE的Web应用程序的过程。在本文中,我们将深入探讨如何使用Struts2来实现压缩文件的上传功能,并将其保存到Tomcat...

    struts2项目部署

    Struts2是一个流行的Java web框架,它为开发者提供了一种模型-视图-控制器(MVC)架构,便于创建结构清晰、可维护性高的企业级应用程序。本教程将详细介绍如何部署一个基于Struts2的项目,特别适合初学者。由于实际...

    struts2.1.3上传文件

    在上述代码中,我们首先创建了一个目标保存目录,然后将上传的文件复制到该目录下。注意,实际应用中还需要进行权限检查、文件类型验证、大小限制等安全操作。 最后,别忘了在struts.xml中配置Action,确保文件上传...

    struts2 最新漏洞 S2-016、S2-017修补方案 .docx

    Struts2 是一个基于 Java 的 Web 应用程序框架,由 Apache 软件基金会维护。最近,Struts2 发生了两个严重的漏洞,分别是 S2-016 和 S2-017,这两个漏洞可能会导致攻击者执行恶意代码,从而危害到网站的安全。 S2-...

    struts2上传文件需要的jar包

    3. **定义Action类**:在Action类中,声明一个类型为`java.io.File`或`org.apache.struts2.dispatcher.multipart.FileItem`的字段来接收上传的文件,Struts2会自动将文件内容填充到这个字段。 4. **处理上传**:在...

    struts2jar包

    Struts2是一个强大的Java EE应用程序框架,主要用于构建企业级的Web应用。它的核心是MVC(Model-View-Controller)设计模式,可以帮助开发者组织代码,提高开发效率,并且提供了丰富的特性来支持表单验证、国际化、...

    Struts2(一)

    ### Struts2 知识点概览 #### Struts2 概述与来历 - **Struts2**是由Apache组织维护的一款...从环境搭建到第一个案例的实现,再到深入理解配置文件及其元素,每一个环节都紧密相连,共同构成了Struts2的核心知识体系。

    struts2漏洞s2-045,不升级jar版本的修补方法,已验证.docx

    4. 复制文件 JakartaMultiPartRequest.java、MultiPartRequestWrapper.java:在该目录下,我们需要复制两个文件:JakartaMultiPartRequest.java 和 MultiPartRequestWrapper.java。 5. 修改方法 buildErrorMessage...

    jquery+struts2实现文件上传

    jQuery是一个轻量级的JavaScript库,提供了丰富的交互效果和API,而Struts2是Java企业级开发中广泛使用的MVC框架,它提供了一套完善的文件上传机制。 首先,我们需要确保在项目中引入了Struts2的核心库。根据描述,...

    struts1实现文件上传

    Struts1是Apache Struts的一个版本,它是一个用于构建基于Java的Web应用程序的开源框架。Struts1提供了MVC(Model-View-Controller)架构模式的支持,使得开发者能够更加清晰地组织代码结构,易于维护与扩展。 ####...

    struts2的单个文件上传

    本文主要两种方式,一:通过 FileUtils.copyFile(file, savefile);方法复制;二:通过字节流方式复制 ; web.xml struts.xml, struts.properties, UploadAction.java, index.jsp. success.jsp

    最新的struts2.3.8文档

    3. **结果类型(Result Types)**:Struts2支持多种结果类型,如dispatcher(转发到一个JSP页面)、stream(用于文件下载)、redirect(重定向URL)等,开发者可以根据需要选择合适的结果类型。 4. **OGNL(Object-...

    Struts2 创建简单步骤

    Struts2是一个强大的MVC(Model-View-Controller)框架,用于构建企业级的Java Web应用程序。它在Java社区中广泛使用,提供了丰富的功能和组件,简化了开发流程。下面将详细阐述创建一个简单的Struts2 HelloWorld...

    struts2实现文件上传

    Struts2是一个非常流行的Java Web框架,用于构建企业级的MVC(模型-视图-控制器)应用程序。在这个“struts2实现文件上传”的主题中,我们将深入探讨如何使用Struts2框架处理用户通过Web表单提交的文件上传请求。 ...

Global site tag (gtag.js) - Google Analytics