smartupload为什么使用smartupload执行上传保存操作时用这句smart.save("upload")失败用smart.save("/upload")成功

smartupload  时间:2021-07-02  阅读:()

jspsmartupload.jar怎么用啊?

我以前项目使用过,但是后来被摒弃了,因为jspsmartupload.jar已经很久没有更新,而且它在上传大文件时会有问题 建议使mons-fileupload.jar(另外需mons-io.jar) 下面为部分源代码: /**Create a factory for disk-based file items*/ DiskFileItemFactory factory = new DiskFileItemFactory(); /**设置最大的内存大小*/ factory.setSizeThreshold(4096); /**创建一个新的文件上传操作*/ ServletFileUpload upload = new ServletFileUpload(factory); /**设置能上传的最大文件的大小*/ upload.setSizeMax(10*1024); /**Parse the request*/ List fileItems = upload.parseRequest(request); //开始读取上传信息 Iterator iter = fileItems.iterator(); // 依次处理每个上传的文件 while(iter.hasNext()) { FileItem item = (FileItem) iter.next(); // 忽略其他不是文件域的所有表单信息 if (!item.isFormField()) { String name = item.getName(); String endName = name.substring(name.lastIndexOf(".") + 1); try{ item.write(new File(request.getRealPath("\"+sUploadDir+FileName+"."+ endName))); }catch(Exception e){ e.printStackTrace(); }

SmartUpload中文乱码如何解决???文件名的在Servlet中提取。

中文乱码问题 你可以使用一个转中文的工具类,在我的空间里也有。

很方便。

打包为.jar文件的话,也需要个工具类。



算了 我直接贴这吧。

方便后来人也 jar包的话 你去下mons-io-1.2.jar 就行了。

以下是ZIP工具类~ ------------------------------------------ import java.io.*; import java.util.Enumeration; import java.util.zip.*; mons.io.FilenameUtils; /** * zip压缩工具。

暂不支持中文文件名。

* * @author zhangjin * */ public class ZipUtils { public static void main(String[] args) { long start = System.currentTimeMillis(); zip("D:/bak", "D:/test.zip"); // System.out.println(System.currentTimeMillis() - start); // start = System.currentTimeMillis(); // unzip("d:\test.zip", "d:\hoho"); System.out.println(getCRCCode("D:\sessionserver.jar")); System.out.println(System.currentTimeMillis() - start); } public static final int DATA_BUFFER = 8192; /** * 获得crc签名。

* @param filename * @return */ public static String getCRCCode(String filename){ String code = ""; try{ FileInputStream fileinputstream = new FileInputStream(filename); CRC32 crc32 = new CRC32(); CheckedInputStream checkedinputstream = new CheckedInputStream(fileinputstream, crc32); byte data[] = new byte[DATA_BUFFER]; while (checkedinputstream.read(data, 0, DATA_BUFFER)!=-1){} code = Long.toHexString(crc32.getValue()); } catch (Exception e) { e.printStackTrace(); } return code; } /** * 压缩文件,只处理一层目录,不处理多层目录。

* * @param srcdir * @param filename */ public static void zip(String srcdir, String filename) { try { //如果目录不存在,创建目录 String filepath = FilenameUtils.getFullPath(filename); File zippath = new File(filepath); if (!zippath.exists()) zippath.mkdirs(); ZipOutputStream out = new ZipOutputStream(new DataOutputStream( new FileOutputStream(filename))); subzip(srcdir, "", out); out.close(); } catch (Exception e) { e.printStackTrace(); } } /** * 递归处理多级目录。

* * @param srcdir * @param subdir * @param out * @throws Exception */ private static void subzip(String srcdir, String subdir, ZipOutputStream out) throws Exception { subdir = subdir.equals("") ? "" : (subdir.startsWith(File.separator) ? subdir : File.separator + subdir); File dirfile = new File(srcdir + subdir); // System.out.println(srcdir+subdir); String[] files = dirfile.list(); String subname = ""; for (int i = 0; i < files.length; i++) { subname = srcdir + subdir + File.separator + files[i]; if (new File(subname).isDirectory()) { subzip(srcdir, subdir + File.separator + files[i], out); } else { BufferedInputStream in = new BufferedInputStream( new FileInputStream(subname), DATA_BUFFER); out.putNextEntry(new ZipEntry((subdir.equals("") ? "" : (subdir .startsWith(File.separator) ? subdir.substring(1, subdir.length()) + File.separator : subdir + File.separator)) + files[i])); int count; byte data[] = new byte[DATA_BUFFER]; while ((count = in.read(data, 0, DATA_BUFFER)) != -1) { out.write(data, 0, count); } in.close(); } } } /** * 解压缩文件。

* * @param filename * @param destdir */ public static void unzip(String filename, String destdir) { try { BufferedOutputStream dest = null; BufferedInputStream is = null; ZipEntry entry; ZipFile zipfile = new ZipFile(filename); Enumeration e = zipfile.entries(); while (e.hasMoreElements()) { entry = (ZipEntry) e.nextElement(); // System.out.println("Extracting: " + entry); is = new BufferedInputStream(zipfile.getInputStream(entry)); int count; byte data[] = new byte[DATA_BUFFER]; // 检查目录,强制建立。

String zipedfilename = destdir + File.separator + entry.getName(); String zipedfilepath = FilenameUtils.getFullPath(zipedfilename); File zipedpath = new File(zipedfilepath); if (!zipedpath.exists()) zipedpath.mkdirs(); FileOutputStream fos = new FileOutputStream(zipedfilename); dest = new BufferedOutputStream(fos, DATA_BUFFER); while ((count = is.read(data, 0, DATA_BUFFER)) != -1) { dest.write(data, 0, count); } dest.flush(); dest.close(); is.close(); } } catch (Exception e) { e.printStackTrace(); } } }

smartupload.jar放的路径到底是什么?

1. 不用把jar文件里面的Class解压到WEB-INF/classes,先把这些删除了吧。

2. 下载servletAPI.jar 3. 设置你的在eclipse中,ClassPath。

JspSmartUpload上传组件有哪些特点

SmartUpload 是一个免费的上传下载组件,好像早已经停止开发了。

SmartUpload.jar:我找到的最好的一个jar包,对于编码为GBK的,完全支持中文名文件的上传与下载;但对于UTF-8的,中文名上传可以,但中文名下载还是乱码。

这个组件,小项目用用还行,对于大项目,不建议使用。

比较常用的有mons-fileupload等,而且许多框架都集成了上传下载功能,如Struts 1/ Struts 2 另外,注意一点:由于smartupload是把文件全部缓存到内存里,所以上传大文件或多文件时就有可能出错,建议一般不要超过20M,个数也不要太多

如何使用jspsmartupload

jspSmartUpload太小巧,问题很多,代码共享者很早就没有再维护次小项目,建议用monupload. 下载文件不用任何组件也可以,你只要给出正确的mime type即可。

为什么使用smartupload执行上传保存操作时用这句smart.save("upload")失败用smart.save("/upload")成功

你好,smart.save(“”)方法是将文件保存到指定目录,upload 表示当前请求文件的相对路径,/upload是表示web应用根目录下的upload目录。

只要能找到upload目录都是可以的。

宝塔面板批量设置站点404页面

今天遇到一个网友,他在一个服务器中搭建有十几个网站,但是他之前都是采集站点数据很大,但是现在他删除数据之后希望设置可能有索引的文章给予404跳转页面。虽然他程序有默认的404页面,但是达不到他引流的目的,他希望设置统一的404页面。实际上设置还是很简单的,我们找到他是Nginx还是Apache,直接在引擎配置文件中设置即可。这里有看到他采用的是宝塔面板,直接在他的Nginx中设置。这里我们找到当前...

搬瓦工:新增荷兰机房 EUNL_9 测评,联通 AS10099/AS9929 高端优化路线/速度 延迟 路由 丢包测试

搬瓦工最近上线了一个新的荷兰机房,荷兰 EUNL_9 机房,这个 9 的编号感觉也挺随性的,之前的荷兰机房编号是 EUNL_3。这次荷兰新机房 EUNL_9 采用联通 AS9929 高端路线,三网都接入了 AS9929,对于联通用户来说是个好消息,又多了一个选择。对于其他用户可能还是 CN2 GIA 机房更合适一些。其实对于联通用户,这个荷兰机房也是比较远的,相比之下日本软银 JPOS_1 机房可...

ShineServers(5美元/月)荷兰VPS、阿联酋VPS首月五折/1核1G/50GB硬盘/3TB流量/1Gbps带宽

优惠码50SSDOFF 首月5折50WHTSSD 年付5折15OFF 85折优惠,可循环使用荷兰VPSCPU内存SSD带宽IPv4价格购买1核1G50G1Gbps/3TB1个$ 9.10/月链接2核2G80G1Gbps/5TB1个$ 12.70/月链接2核3G100G1Gbps/7TB1个$ 16.30/月链接3核4G150G1Gbps/10TB1个$ 18.10/月链接阿联酋VPSCPU内存SS...

smartupload为你推荐
洗牌算法c语言编程用扑克牌洗牌和发牌索引超出了数组界限索引超出了数组界限是怎么回事啊?保留两位有效数字物理中保留两位有效数字是保留小数点后的两位还是从小数点前不是0的数开始保留两位?丁奇王下七武海和四皇分别是谁?网页微信客户端手机微信客户端怎么打开网页spawningVC中Error spawning cl.exe错误的解决方法.欢迎页面怎样取消“欢迎页面”?系统论坛安卓系统论坛哪个好?新手怎么制作表格怎么样在电脑上制作表格初学者疫苗之王“龟毛之王”是什么意思???
域名注册服务 net主机 mediafire下载工具 谷歌香港 100x100头像 域名转接 阿里校园 umax120 t云 万网空间购买 卡巴斯基是免费的吗 raid10 带宽租赁 免费的asp空间 hostease 香港博客 空间排行榜 qq空间打开很慢 美国西雅图独立 超低价 更多