1. <button label="上传 Image" upload="true,maxsize=1073741824">
  2. <attribute name="onUpload"><![CDATA[
  3. org.zkoss.util.media.Media media = event.getMedia();
  4. String fileName = "";
  5. if(media!=null)
  6. fileName = media.getName();
  7. 三种流:
  8. java.io.InputStream ins = new java.io.ByteArrayInputStream(media.getStringData().getBytes());
  9. java.io.InputStream ins = new java.io.ByteArrayInputStream(media.getByteData());
  10. java.io.InputStream ins = new java.io.BufferedInputStream(media.getStreamData());
  11. java.io.File f = new java.io.File("D:\\temp\\"+fileName);
  12. if(!f.exists()){
  13. f.createNewFile();
  14. }
  15. java.io.OutputStream out = new java.io.FileOutputStream(f);
  16. byte[] buf=new byte[1024];
  17. int len;
  18. while((len=ins.read(buf))>0){
  19. out.write(buf,0,len);
  20. }
  21. out.close();
  22. ins.close();
  23. alert("上传成功");
  24. ]]></attribute>
  25. </button>

上传按扭监听器写法:

uploadBtn.addEventListener(Events.ON_UPLOAD, new EventListener() {

@Override
public void onEvent(Event event) throws Exception {
// TODO Auto-generated method stub

UploadEvent uploadEvent = (UploadEvent) event;
Media media = uploadEvent.getMedia();
}
});

解决ZK文件上传中文问题

第二种写法(zk8.0.0.1):

  1. <a id="fileUploadA" label="导出文件"></a>

后台:

  1. fileUploadA.addEventListener(Events.ON_CLICK, new EventListener<Event>() {
  2. @Override
  3. public void onEvent(Event event) throws Exception {
  4. Fileupload.get("选择文件", "上传", 2, 1000000, true);
  5. Executions.getCurrent().getDesktop().setAttribute(
  6. "org.zkoss.zul.Fileupload.target", fileUploadA);
  7. }
  8. });
  9. fileUploadA.addEventListener(Events.ON_UPLOAD, new EventListener<Event>() {
  10. @Override
  11. public void onEvent(Event event) throws Exception {
  12. UploadEvent uploadEvent = (UploadEvent) event;
  13. alert(uploadEvent.getMedias().length+"");
  14. }
  15. });

效果:

zk FileUpload(文件上传)的更多相关文章

  1. 对FileUpload文件上传控件的一些使用方法说明

    //创建时间:2014-03-12 //创建人:幽林孤狼 //说明:FileUpload文件上传控件使用说明(只是部分)已共享学习为主 //可以上传图片,txt文档.doc,wps,还有音频文件,视屏 ...

  2. FileUpload文件上传控件

    1.FileUpload控件的主要功能是向指定目录上传文件.FileUpload控件不会自动上传控件,而需要设置相关的事件处理程序,然后在程序中实现文件上传. 2.FileUpload控件常见的属性 ...

  3. ASP.NET中的FileUpload文件上传控件的使用

    本篇文章教大家如何将客户端的图片或者文件上传到服务器: 无论是上传图片(.jpg .png .gif等等) 文档(word excel ppt 等等). 第一步:放入以下三个控件 Image控件,Fi ...

  4. apache fileupload 文件上传,及文件进度设置获取

    文件上传action处理: boolean isMultipart = ServletFileUpload.isMultipartContent(request); if (isMultipart) ...

  5. Commons FileUpload文件上传组件

    Java实现的文件上传组件有好几种,其中最为“官方”的要数Apache Commons库中的FileUpload了吧. 页面 <form method="POST" enct ...

  6. Bootstrap Fileupload 文件上传

    1.在jsp中引入css与js文件, <link href="${ctx}/plugins/fileup/css/fileinput.css" media="all ...

  7. commons.fileupload 文件上传

    编辑jsp页面获取文件 <html> <head> <base href="<%=basePath%>"> <title> ...

  8. 改变FileUpload文件上传控件的显示方式,确认后上传

    一.Aspx页面: <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="File ...

  9. 改变FileUpload文件上传控件的显示方式,选择文件后自动上传

    一.Aspx页面: <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="File ...

  10. Spring 文件上传MultipartFile 执行流程分析

    在了解Spring 文件上传执行流程之前,我们必须知道两点: 1.Spring 文件上传是基于common-fileUpload 组件的,所以,文件上传必须引入此包 2.Spring 文件上传需要在X ...

随机推荐

  1. 【hibernate 报错】No serializer found for class org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer 【get和load的区别】

    报错: HTTP Status 500 - Could not write content: No serializer found for class org.hibernate.proxy.poj ...

  2. Android源码学习之模板方法模式应用

    一.模板方法模式定义 模板方法模式定义: defines the skeleton of an algorithm in a method, deferring some steps to subcl ...

  3. python 文件操作总结

    Python 文件I/O 本章只讲述所有基本的的I/O函数,更多函数请参考Python标准文档. 打印到屏幕 最简单的输出方法是用print语句,你可以给它传递零个或多个用逗号隔开的表达式.此函数把你 ...

  4. css学习(2)-- 常见的CSS属性和值

    1.CSS中修饰字体的属性 属    性 描    述 属  性  值 font-family 字体族科 任意字体族科名称都可以使用例如Times.serif等,而且多个族科的赋值是可以使用的,中间用 ...

  5. SU sunmo命令学习

  6. C#函数与SQL储存过程

    一点点小认识作为memo,求指正. C#的函数与SQL的储存过程有很多的相似性, 它们都是一段封闭的代码块,来提高代码的重用性,虽然现在复制粘贴很方便,但是我们在写多个函数的时候频繁的复制粘贴相同的内 ...

  7. 端口偷窃(Port Stealing)技术

    端口偷窃(Port Stealing)技术   该技术主要用于局域网中间人攻击中,尤其目标计算机采用静态ARP后,导致ARP欺骗无效.   背景知识:路由器为了方便转发数据包,会在内部记录每个接口和M ...

  8. JavaScript实现li隔行变色

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  9. 转载:CSS3 Flexbox可视化指南

    0. 目录 目录 引言 正文 1 引入 2 基础 3 使用 4 弹性容器Flex container属性 41 flex-direction 42 flex-wrap 43 flex-flow 44 ...

  10. Codeforces Round #235 (Div. 2)C、Team

    #include <iostream> #include <algorithm> using namespace std; int main(){ int n,m; cin & ...