zoukankan      html  css  js  c++  java
  • strut2 文件上传

    原理:将一个文件复制到另一文件中。

    这里给出action的代码,其它页面省略:

    package cn.itcast.action;
    
    import java.io.BufferedInputStream;
    import java.io.BufferedOutputStream;
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.InputStream;
    import java.io.OutputStream;
    
    import com.opensymphony.xwork2.ActionSupport;
    
    public class FileUploadAction extends ActionSupport{
        
        
        //文件拷贝函数
        //src表示源文件,dst表示目标文件
        public void copy(File src,File dst) throws Exception{
            //定义一个输入流对象,使用缓冲类需要提供一个输入流对象
            InputStream in  = new BufferedInputStream(new FileInputStream(src));
            OutputStream out = new BufferedOutputStream(new FileOutputStream(dst));
            //声明一个字节数组,用来存储读入的数据
            byte[] b = new byte[1024];
            int length=0;
            //循环读取输入流对象,把输入流读到字节数组中,返回读取的字节数长度,如果读到末尾则返回-1
            while(-1!=(length=in.read(b))){
                out.write(b);//讲字节数组的数据写到输出流文件中.
            }
        }
    //方法二:
        public void copy2(File src,File dst) throws Exception{
            InputStream in = new FileInputStream(src);
            OutputStream out = new FileOutputStream(dst);
            byte[] b = new byte[1024];
            int len = 0;
            while((len=in.read(b))!=-1){
                out.write(b);
            }
        }
    public static void main(String args[]){ File image = new File("C:\bb.jpg"); //假设这个是要上传的文件 File image2 = new File("C:\bb2.jpg");//这个表示上传到服务端的文件 FileUploadAction fileUploadAction = new FileUploadAction(); try { fileUploadAction.copy(image, image2); } catch (Exception e) { e.printStackTrace(); } } }

    文件上传的方式有很多,原理就是文件的复制。从输入流中复制到输出流中。

  • 相关阅读:
    java 闭包(转)
    设计模式之工厂
    java研发工作组环境架设
    [每日一题jQuery] jQuery选择器总结:进一步过滤、同级操作、后代操作
    [工具] 解决sublime text运行javascript console无输出问题
    [工具]web开发时自动刷新网页:liveReload
    [每日一题JS] 正则表达式
    [工具]sublime text2前端开发利器
    |原创|unity 4.3 2D功能SpriteRenderer修改颜色的方法
    unity 获取系统时间
  • 原文地址:https://www.cnblogs.com/kailing-con/p/4201891.html
Copyright © 2011-2022 走看看