java如何实现用iO流将文件从客户端拷贝到服务器端,是嵌套在web项目下的。求大侠,把源码贴出来

项目是ssh写的,代码要嵌套在action的java文件中去

public class UploadAction extends ActionSupport {
private static final long serialVersionUID = -6707209240028419956L;
private File uploadify;
private String sclx;//1.邮件
private String uploadifyFileName;
private static final DateFormat df = new SimpleDateFormat("yyyyMMddHHmm");
@Autowired
private WenjdetailManager wenjdetailManager;
public String uploadFile() throws Exception {
String extName = "";// 扩展名
String newFileName = "";// 新文件名
String nowTime = df.format(new Date());// 当前时间
String random = "-" + (Math.round(Math.random() * 9000) + 1000);// 随机函数
String path="";
if(sclx!=null&&sclx.equals("1"))
path = "uploadsyj/" + nowTime.substring(0, 6) + "/" + nowTime.substring(0, 8) + "/";// 保存路径
else
path = "uploads/" + nowTime.substring(0, 6) + "/" + nowTime.substring(0, 8) + "/";// 保存路径
String savePath = ServletActionContext.getServletContext().getRealPath("");
savePath = savePath.replace("\\", "/");
if (!savePath.substring(savePath.length()).equals("/"))
savePath = savePath + "/";
savePath = savePath + path;
// 获取扩展名
if (uploadifyFileName.lastIndexOf(".") >= 0) {
extName = uploadifyFileName.substring(uploadifyFileName.lastIndexOf("."));
}
newFileName = uploadifyFileName.substring(0, uploadifyFileName.lastIndexOf(".")) + nowTime.substring(8)
+ random + extName;
File file = new File(savePath);
if (!file.exists())
file.mkdirs();
uploadify.renameTo(new File(savePath + newFileName));
/*
* HttpServletResponse response = ServletActionContext.getResponse();
* response.setCharacterEncoding("utf-8");
* response.getWriter().print(uploadifyFileName+"上传成功");
*/
String ctx=Struts2Utils.getRequest().getContextPath();
Struts2Utils.renderText(ctx+"/"+path + newFileName );
return null; // 这里不需要页面转向,所以返回空就可以了
}

public File getUploadify() {
return uploadify;
}
public void setUploadify(File uploadify) {
this.uploadify = uploadify;
}
public String getUploadifyFileName() {
return uploadifyFileName;
}
public void setUploadifyFileName(String uploadifyFileName) {
this.uploadifyFileName = uploadifyFileName;
}
public String getSclx() {
return sclx;
}
public void setSclx(String sclx) {
this.sclx = sclx;
}

}
温馨提示:内容为网友见解,仅供参考
无其他回答

java如何实现 io流传输过来的文件,提示另存为弹出窗口?
第一步:设置Response头部(最关键)response.setContentType("application\/octet-stream;charset=UTF-8");\/\/ 设置弹出框提示的文件名 response.addHeader("Content-Disposition", "attachment; filename=" + java.net.URLEncoder.encode(fileName, "UTF-8"));第二步:解析输入流 \/\/ 这里的in为...

怎样用JAVA编写把一个文件夹中的文件复制到一个指定的文件夹用完文件后...
import java.io.FileWriter;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.io.PrintWriter;import java.net.URL;import java.util.StringTokenizer;public class FileUtil { \/** * 读取文本文件内容 * * @param filePathAndName * 带有完整绝对路径的文件名...

javaweb项目我在src下建了一个文件夹里面放html文件,我想在类中用io流...
public class $ { public static void main(String[] args) { String path = System.getProperty("user.dir") + "\/src\/html\/email.html"; System.out.println(path); }}动态获取路径

java.io.FileNotFoundException: (系统找不到指定的路径。)怎么处理
public static void main(String[] args) { File file = new File("D:\/from.txt");File file2 = new File("D:\/to.txt");BufferedReader reader = null;BufferedWriter writer = null;try { System.out.println("以行为单位读取文件内容,一次读一整行:");reader = new BufferedReader(new...

用java中的io流写入文件如何避免覆盖原来的内容?求代码
用这个方法public FileOutputStream(String name,boolean append)throws FileNotFoundException,将逻辑值append设为false时,写入的字节数据覆盖文本原来的内容,为ture是即追加到原来文本的末尾。覆盖原文本内容如:FileOutputStream x=new FileOutputStream("文件全路径",false);throws FileNotFoundException...

JAVA如何把本地文件上传到服务器。
如果服务器开通了ftp服务,你的客户端可以实现一个ftp的客户端,通过ftp服务将文件上传到服务器的指定目录下,可以使用org.apache.commons.net.ftp.FTPClient这个类去实现,非常的简单,网上有很多现成的代码可以用

JAVAweb视频网站开发?
直接把大文件读取为IO流,之后进行上传下载即可,不用担心文件大,是可以分流下载上传的(setBufferSize(1024))。下载简单,无非是把服务器上的文件或者数据库中的BLob(或其他二进制型),用流读出来,然后写到客户端即可,要注意ContentType。如何用Java做网站?难与不难是相对的从Java技术角度来看,开发...

065 文件上传下载和SVN项目同步
文件下载步骤包括视图层添加下载链接并跳转至指定Servlet,控制层中,通过获取学生编号、调用业务层查询信息,使用IO流实现从服务器到客户端的文件复制与发送,确保下载文件的长度、类型和名称正确显示或提示用户下载。对于下载操作,还需解决文件直接显示而非提示下载或另存为的问题,通过设置响应头来控制。若...

通过IO流,把一个JPG从C盘写到D盘去,如何实现?
程序中的文件名自己改把,pic1是被复制的图片,pic2是复制后的图片 import java.io.*;public class Copy { public static void main(String[] args) { File pic1 = new File("C:\/test1.jpg");File pic2 = new File("D:\/test2.jpg");FileInputStream fis = null;FileOutputStream fos ...

java菜鸟入门(java菜鸟编程)
客户端可以使用这个解释器来解释这个语言中的句子。解释器模式将描述怎样在有了一个简单的文法后,使用模式设计解释这些语句。在解释器模式里面提到的语言是指任何解释器对象能够解释的任何组合。在解释器模式中需要定义一个代表文法的命令类的等级结构,也就是一系列的组合规则。每一个命令对象都有一个解释方法,代表对命令...

相似回答