java web开发,上传图片并读取

java web开发,上传图片并读取,第1张

java web开发中,使用文件 *** 作类来上传并读取,如下代码:

  @desc: 处理工具

  @author: bingye

  @createTime: 2015-3-17 下午04:25:32

  @version: v10

 /

public class ImageUtil {

 

    /

     将写到客户端

     @author: bingye

     @createTime: 2015-3-17 下午04:36:04

     @history:

     @param image

     @param response void

    /

    public static void writeImage(byte[] image,>

获取上下文

从request中取,得到webapp路径。

String dir = requestgetServletContext()getRealPath("/") ;

拼接文件夹

String saveDir = dir + "images";

 

servlet类

package orgwhatisjavaservlet;

import javaioFile;

import javaioIOException;

import javautilList;

import javaxservletServletContext;

import javaxservletServletException;

import javaxservlet>

改为:File dateFile2 = new File(basePath + datePath + "/" + model);的时候不好使应该是你的返回值没有加 文件分隔符的原因。

你最后成功是因为你加了 datePath+="/";

让返回和新建文件路径都一致了。

另外不要用“/” 最好使用:Fileseparator;

还有renameTo只能在windows下使用,limux不行,而且即使是在windonws下,如果file systems不一样也会失败的,建议copy文件自己重写或者使用common-io的工具类。

用struts也可以实现 多文件上传

下面是我写的代码,

参数中有要保存的目录

作为参考!

/文件目录/

public static String [] fileArray={

"logopng",

"indexswf",

"OEMInfotxt",

"faviconico"};

/

@author Caoshun

@see 接收并保存文件

/

public static void receiveAndSaveAllFileByPath(ActionForm form,String rootPath1,String rootPath2){

String fileName="";

//获取表单中的文件资源

Hashtable<Object, Object> files = formgetMultipartRequestHandler()getFileElements();

//遍历文件,并且循环保存

//当前处理文件序号

int file_num=1;

for (Enumeration<Object> e = fileskeys(); ehasMoreElements();) {

/根据处理的当前文件下标,确定文件名/

fileName=fileArray[file_num-1];

FormFile file = (FormFile) filesget((String) enextElement());

if (file != null && filegetFileSize() > 0) {

try {

//使用formfilegetInputStream()来获取一个文件的输入流进行保存。

//文件名

//String fileName = filegetFileName();

//Systemoutprintln("debug in AddEnterpriceActionjava on line 152 fileName is : "+fileName);

//文件大小

//int fileSize = filegetFileSize();

//文件流

InputStream is = filegetInputStream();

//将输入流保存到文件

//String rootPath = thisservletgetServletContext()getRealPath("files");

//往cn中写入

File rf = new File(rootPath1);

FileOutputStream fos = null;

fos = new FileOutputStream(new File(rf, fileName));

byte[] b = new byte[10240];

int real = 0;

real = isread(b);

while (real > 0) {

foswrite(b, 0, real);

real = isread(b);

}

//往en中写入

File rf2 = new File(rootPath2);

InputStream is2 = filegetInputStream();

FileOutputStream fos2 = null;

fos2 = new FileOutputStream(new File(rf2, fileName));

byte[] b2 = new byte[10240];

int real2 = 0;

real2 = is2read(b2);

while (real2 > 0) {

fos2write(b2, 0, real2);

real2 = is2read(b2);

}

//关闭文件流

fosclose();

isclose();

fos2close();

is2close();

} catch (RuntimeException e1) {

e1printStackTrace();

} catch (Exception ee) {

eeprintStackTrace();

}

filedestroy();

}

file_num++;

}

}

以上就是关于java web开发,上传图片并读取全部的内容,包括:java web开发,上传图片并读取、java中,上传视频时,视频信息已经写到数据库了,但是指定位置却没有保存视频怎么办、java用相对路径将图片上传到WebContent下的images文件夹里等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9321150.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-27
下一篇2023-04-27

发表评论

登录后才能评论

评论列表(0条)

    保存