文档章节

网络文件传输学习

noteman
 noteman
发布于 2015/10/21 14:37
字数 217
阅读 8
收藏 0

            在javaWEB开发中,文件上传有许多插件和方法,但是,本质上都是对数据流(二进制的数据流)的操作;

    首先,学习最原始的文件上传原理:form表单+Servlet;

    页面要点:form表单的<input type="file" name="fileNme" enctype="multipart/form-data" />

    servlet要点:  

                //从request当中获取流信息(包含了表单提交的所有信息

                InputStream fileSource = req.getInputStream();

                String tempFileName = "E:/tempFile";

                //tempFile指向文件

                File tempFile = new File(tempFileName);

                //outputStram文件输出流指向这个文件(如果没有,会自动新建文件)

                FileOutputStream outputStream = new FileOutputStream(tempFile);

                byte b[] = new byte[1024];

                int n;

                while(( n = fileSource.read(b)) != -1){

                outputStream.write(b, 0, n);

                }

                //关闭输出流、输入流

                outputStream.close();

                fileSource.close();

然后,使用框架或者插件来上传文件;请参考我写的相关文件传输的文章

            




© 著作权归作者所有

共有 人打赏支持
上一篇: jsp
下一篇: javaI/O
noteman
粉丝 14
博文 233
码字总数 44869
作品 0
六安
私信 提问
VC++网络编程-文件传输

在SOCKET编程中,以前学习的时候都是简单的字符传输,而在实际的应用中,经常需要传输文件,其实网络上的文件传输都是先把数据转化为字节流,当然,最底层的是01二进制数据的传输,但是这部在...

长平狐
2013/12/25
79
0
Socket网络编程进阶与实战

网盘地址 Socket网络编程进阶与实战 Socket对于每个工程师的重要性不言而喻。本课程将理论结合实践,带你从零开始,系统学习Socket编程技术,让Socket的学习不再那么零散与难以掌握,同时会提...

qq__2304636824
10/16
0
0
android版本飞鸽传书源码(附图)

软件介绍 软件采用飞鸽传书协议。目前只完成了飞鸽传书协议中的最基本的功能:上下线功能,聊天功能和文件传输功能。关于飞鸽协议的内容,可以google下。我的CSDN博客里,也有2篇我学习时写的...

76135
2012/07/16
0
3
Java IO/NIO学习总结

下面是自己学习整理Java IO/NIO的总结,期间浏览了网上很多优秀的总结分析文章,一并贴在这里供大家学习参考。IO的知识点学习大概分为以下几个部分: 概念理解 熟悉Java IO API 熟悉Java NI...

isam
2016/03/22
208
0
mkdocs与jekyll 创建静态网站

mkdocs教程:http://www.mkdocs.org/#installation(英文) http://markdown-docs-zh.readthedocs.org/zhCN/latest/(中文) MacDown的下载包:http://yunpan.cn/cdmKrfvZs2fsc (提取码:6a8e)......

黑黑的豆
2015/08/06
0
0

没有更多内容

加载失败,请刷新页面

加载更多

小白带你认识netty(三)之NioEventLoop的线程(或者reactor线程)启动(一)

在第一章中,我们看关于NioEventLoopGroup的初始化,我们知道了NioEventLoopGroup对象中有一组EventLoop数组,并且数组中的每个EventLoop对象都对应一个线程FastThreadLocalThread,那么这个...

天空小小
今天
3
0
PHP动态扩展Redis模块

查看已有模块 [root@test-a ~]# /usr/local/php/bin/php -m[PHP Modules]bz2Core...zlib[Zend Modules] 下载包,解压,生成configure文件 [root@test-a ~]# cd /usr/local/src/[ro......

野雪球
今天
3
0
在Ignite中使用线性回归算法

在本系列前面的文章中,简单介绍了一下Ignite的机器学习网格,下面会趁热打铁,结合一些示例,深入介绍Ignite支持的一些机器学习算法。 如果要找合适的数据集,会发现可用的有很多,但是对于...

李玉珏
今天
5
0
Mybatis应用学习——简单使用示例

1. 传统JDBC程序中存在的问题 1. 一个简单的JDBC程序示例: public class JDBCDemo {public static void main(String[] args) {Connection con=null;PreparedStatement statemen...

江左煤郎
今天
4
0
使用JavaScript编写iOS应用业务逻辑

JSAUIKitCocoa使你可以使用JavaScript编写对性能要求不高但可能变动性很大的iOS应用的业务逻辑部分,View组件、需要多线程支持的Model等则直接使用原生对象。 编写方式与React Native相似,但...

neal01
今天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部