在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
如果你曾用VB编写文件上传的组件的话,那么用JAVA编写文件上传的JAVABEAN十分容易。 下面的例子只是一个简版 package yuanyifileup; import java.io.*; import java.util.*; import javax.servlet.*; import javax.servlet.http.*; import javax.servlet.jsp.PageContext; public class yuanyifileup { private ServletRequest request; private ServletResponse response; private ServletConfig config; ServletInputStream DATA; int FormSize; File f1; FileOutputStream os; DataInputStream is; String filename; byte[] b; byte t; boolean flag=false; public yuanyifileup() { } public void initialize(ServletConfig config,HttpServletRequest request,HttpServletResponse response) throws IOException { this.request=request; this.response=response; this.config=config; DATA = request.getInputStream(); FormSize=request.getContentLength(); } public void initialize(PageContext pageContext) throws IOException { request=pageContext.getRequest(); response=pageContext.getResponse(); config=pageContext.getServletConfig(); DATA = request.getInputStream(); FormSize=request.getContentLength(); } public boolean setFilename(String s) { try { File f1=new File(s); os=new FileOutputStream(f1); } catch(IOException e) {return(false);} return(true); } public void getByte() { int i=0; try { is=new DataInputStream(DATA); b=new byte[FormSize]; while (true) { try { t=is.readByte(); b[i]=t; i++; } catch(EOFException e) { break;} } is.close();} catch(IOException e) {} } public boolean save() { int i=0,start1=0,start2=0; String temp=""; if (!flag) { getByte(); flag=true; } try { temp=new String(b,"ISO8859_1"); } catch(UnsupportedEncodingException e) {return(false);} start1=temp.indexOf("image/"); temp=temp.substring(start1); start1=temp.indexOf("\r\n\r\n"); temp=temp.substring(start1+4); start2=temp.indexOf(";\r\n"); if (start2!=-1) { temp=temp.substring(0,start2); } try { byte[] img=temp.getBytes("ISO8859_1"); for (i=0;i<img.length;i++) { os.write(img[i]); } os.close(); } catch(IOException e) {return(false);} return(true); } 如果有不明白的发E-Mail:[email protected] } |
请发表评论