字符流字节流实用总结
输入流和输出流:
流的输入输出都是以应用程序为基准的,这一点一定要注意。
输入流,模样很好记,一般情况下,输入流是带有Input字样或Reader字样的,如FileInputStream和BufferedReader等等,这些都是输入流。
输出流,一般情况下,是带有Output字样或Writer的,如FileOutputStream和FileWriter等等,详细请查查API文档,看看是不是这样。
字节流和字符流
字节流,一般是带有Stream字样的,如InputStream,FileInputStream等等,这组流处理的最小单位之字节。
字符流,一般是带有Reader或Writer字样的,如InputStreamReader等等,它们处理的最小单位是字符。
字节流是最基本的,所有的InputStrem和OutputStream的子类都是,主要用在处理二进制数据,它是按字节来处理的 但实际中很多的数据是文本,又提出了字符流的概念,它是按虚拟机的encode来处理,也就是要进行字符集的转化 这两个之间通过 InputStreamReader,OutputStreamWriter来关联,实际上是通过byte[]和String来关联 在实际开发中出现的汉字问题实际上都是在字符流和字节流之间转化不统一而造成的
下面是几篇博文,介绍的很好:
浏览器 采用了一种编码方式,即 "multipart/form-data" 的编码方式,采用这种方式,浏览器可以很容易将表单内的数据和文件放在一起发送.这 种编码方式先定义好一个不可能在数据中出现的字符串作为 分界符,然后用它将各个数据段分开,而对于每个数据段都对应着 HTML 页面表单 中的一个 Input 区,包括一个 content-disposition 属性,说明了这个数据段的一些信息,如果这个数据段的内容是一个文件,还会有 Content-Type 属性,然后就是数据本身. 我们可以用request.getInputStream()或request.getReader()得到 提交的数据.
用request.getInputStream()或request.getReader()得到 提交的数据:
http://www.cnblogs.com/steve-cnblogs/articles/5420198.html
http://blog.csdn.net/zxman660/article/details/7875799
http://blog.csdn.net/xiebaochun/article/details/29559881
http://www.51testing.com/html/85/258885-811659.html
相关文章
- LeetCode 340. 至多包含 K 个不同字符的最长子串(滑动窗口)
- linux驱动开发--字符设备:设备轮询操作select/poll
- java: InputStreamReader将字节的输入流变成字符的输入流,OutputStreamWriter将字符的输出流变成字节的输出流
- Java实现 LeetCode 821 字符的最短距离(暴力)
- js获取字符串最后一个字符代码
- JAVA-IO操作,字节-字符转换流
- 在多字节的目标代码页中,没有此 Unicode 字符可以映射到的字符。 (#1113)
- 在多字节的目标代码页中,没有此 Unicode 字符可以映射到的字符。 (#1113)
- 关于SAP ABAP字符变量和字符串变量字符个数的一个知识点,和一个血案
- 《卸甲笔记》-PostgreSQL和Oracle的数据类型的对比系列一:字符类型
- Atiitt io的stream流的分类 目录 1. 流的优缺点 高性能但复杂1 1.1. 字节数组更加简单,但性能差点1 2. Io体系1 2.1. 字符流 vs 字节流2 2.2.
- 【BZOJ 1031】[JSOI2007]字符加密Cipher(后缀数组模板)
- Java基础,字节字符
- java字符串练习题3、字符串中字符是否相同判断
- 【华为OD机试】1021 - 删除字符串中出现次数最少的字符
- 【华为机试真题 Python实现】无重复字符的最长子串
- Java学习路线-26:字节流与字符流OutputStream/InputStream/Writer/Reader
- 使用Maven编译项目遇到——“maven编码gbk的不可映射字符”解决办法
- C语言之打印数字/字符ASCII(五十二)
- 5. 宽字符注入详解与实战
- HashTree(哈希树) ——和trie类似,只是将字符换成了质数,sphinx用到了???
- 华为校招机试 - 检测热点字符(Java & JS & Python)
- C++字符串操作:分割、合并、转数字、转字符数组