文档章节

Java--文件上传与下载

求是科技
 求是科技
发布于 2015/10/19 19:02
字数 343
阅读 126
收藏 5

先讲下java append的用法

Stringbuffer 有append()方法,Stringbuffer其实是动态字符串数组,append()是往动态字符串数组添加字符串,类似于"xx"+"yy"的那个+号。

String1+String2 和Stringbuffer1.append("yyyy")虽然打印效果一样,但在内存中表示却不一样

String1+String2 存在于不同的两个地址内存
Stringbuffer1.append(Stringbuffer2)放再一起

文件上传

import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import org.springframework.web.multipart.MultipartFile;
    /**
     * 图片写入方法
     * @param fileExtends 文件后缀
     * @param file 文件
     * @param flag 区分(0:用户logo;1:用户背景图)
     * @return 文件路径
     */
public String writeFile(String fileExtends, MultipartFile file,String flag){
        //得到上传文件的保存目录,将上传的文件存放于WEB-INF目录下
        StringBuffer savePath = new StringBuffer().append(this.getServletContext().getRealPath("/WEB-INF/upload"));
        File dir = new File(savePath.toString());
         //判断上传文件的保存目录是否存在
        if(!dir.exists()){
            System.out.println(savePath+"目录不存在,需要创建");
            //创建目录
            dir.mkdirs();
        }
        if ("0".equals(flag)) {
            //如果是用户logo,则图片以img.png结尾
            savePath .append("/img.").append(fileExtends);
        }else if ("1".equals(flag)){
            //如果是用户背景图,则图片以bg.png结尾
            savePath .append("/bg.").append(fileExtends);
        }
        
        try {
            //上传流
            byte[] bytes = file.getBytes();
            BufferedOutputStream stream = new BufferedOutputStream(new FileOutputStream(new File(savePath.toString())));
            stream.write(bytes);
            stream.close();
        } catch (IOException e) {
            e.printStackTrace();
            return null;
        }
        
        return savePath;
    }




© 著作权归作者所有

共有 人打赏支持
上一篇: SQL --max使用
下一篇: SQL --动态SQL优化
求是科技
粉丝 90
博文 438
码字总数 226162
作品 0
成都
后端工程师
私信 提问
如何用NetBeans在Kindle3下开发小程序(Kindlet)

以前写的,转过来 如何用NetBeans在Kindle3下开发小程序(Kindlet) 今天研究了一下这方面的帖子,基本上明白了一些原理,主要参考这两个贴,首先感谢这些程序员的无私奉献: 【Kindlet 开发过...

FreeBlues
2012/06/25
0
0
Linux JDK安装及环境变量配置

一.检查和下载JDK 1.检查系统是否已经安装了JDK,如果安装了,先卸载,具体方法请看: http://my.oschina.net/liting/blog/358498 2.从官网选择一个对应的版本下载 JDK最新版本下载:http://...

码农狗
2015/04/04
0
0
Linux系统梳理---系统搭建(一):jdk卸载与安装

1.去官网下载符合Linux版本的jdk,暂用jdk-8u171-linux-x64.rpm 2.登陆Linux,进入usr目录,创建java目录(方便管理,可以其他位置):mkdir java 3.上传下载的jdk包至Linux服务器,使用rz指令(sz f...

勤奋的蚂蚁
07/16
0
0
在linux下用tomcat部署java web项目的过程与注意事项

在linux下用tomcat部署java web项目的过程与注意事项(原创) 一.安装JDK 到http://www.oracle.com/technetwork/java/javase/downloads/index.html下载JavaSE 6 Update 27 根据操作系统选择Lin...

陈小默
2015/11/13
0
0
CentOS上mysql5.7.23安装

因各种需要,要用到mysql, 记录下安装过程。 1.下载mysql 2.上传到服务器 利用putty上传到/usr/local目录下在https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html 下载putty后安...

hensemlee
10/24
0
0

没有更多内容

加载失败,请刷新页面

加载更多

day152-2018-11-19-英语流利阅读-待学习

外媒看吴亦凡刷榜事件 Lala 2018-11-19 1.今日导读 近日,吴亦凡的专辑在国外陷入了刷榜风波,他的新专辑霸占了单曲榜前三名,并且前十名他占据了七席,力压美国乐坛巨星 Lady Gaga 和 A 妹,...

飞鱼说编程
44分钟前
10
0
开源 java CMS - FreeCMS2.8 微信管理 群发图文消息

项目地址:http://www.freeteam.cn/ 群发图文消息 管理员可以在这里群发图文消息 此列表只提取已审核并且带信息图片的数据! 选择需要群发的消息,点击“群发图文消息”按钮。 微信的限定: ...

freeteam
53分钟前
2
0
Beautiful Soup

定义 Python中的一个库,主要用于从网页爬取数据; 安装 pip install beautifulsoup4 四大对象 Beautiful Soup将复杂的HTML文档转换成树形结构,树中的每个节点都是Python对象,对象可归纳为...

村雨1943
今天
5
0
Visual Studio 昨日发布新版本:增加实时同步编程、共同调试

多名开发者可以在同一个项目中编程,在编写代码和调试代码时只需发送一个 URL 网址,就能邀请他人参与协作,而且无需重新配置开发环境和安装任何附加包。该服务支持 Windows、Mac 与 Linux ...

linuxCool
今天
8
0
发现一种不错的学习方法

这是在《软技能,代码之外的生存之道》所看到的一种学习方法,感觉这个理念不错,分享出来,共勉。 我的「十步学习法」 多年以来,我都承受着巨大的压力:快速学习新技术、新编程语言、新框架...

firepation
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部