IO流的节点流和处理流(缓冲流)and ZIP流使用

news2024/11/19 10:40:26

 流的名称

 字节流和字符流的区别

每次读写的字节数不同;

字符流是块读写,字节流是字节读写;

字符流带有缓存,字节流没有

java流在处理上分为字符流和字节流。字符流处理的单元为2个字节的Unicode字符,分别操作字符、字符数组或字符串,而字节流处理单元为1个字节,操作字节和字节数组。

字符流和字节流,一个属性范围小,一个属性范围大,字符流只能是字符这一种类型,但是字节流中可以是字符,可以是二进制文件,可以是音频,可以是各种各样的类型,只要符合字节形式存储的都可以接字节流,而字符流只能接字符。

字节流一般用来处理图像、视频、音频、PPT、Word等类型的文件。字符流一般用于处理纯文本类型的文件,如TXT文件等,但不能处理图像视频等非文本文件。用一句话说就是:字节流可以处理一切文件,而字符流只能处理纯文本文件。

缓冲流在代码编写的注意点

字符流BufferedReader

字节流BufferedInputStream 

 

字节流代码编写格式

 

 

  • 缓冲流的功能主要体现在以下两个方面:
    1. 性能的提高:主要以增加缓冲的方式来提高输入输出的效率。
    2. 操作的便捷:处理流可能提供了一系列便捷的方法来一次输入输出大批量的数据,使用更加灵活方便。

zip流相关 

1定义循环的需要写入zip的所有文件

//定义需要插入文件的集合map key为 url:文件地址,文件名称
List<Map<String,String>> list = new ArrayList<>();

2文件的里所需要的必要参数

 3创建临时文件,将之前的文件放入当中

 主要用于需要确保压缩文件在压缩跟解压的无误操作,确保完全相同

 4核心插入的代码

5 response.setContentType说明

response.setContentType(MIME)的作用是使客户端浏览器,区分不同种类的数据,并根据不同的MIME调用浏览器内不同的程序嵌入模块来处理相应的数据。

一般在Servlet中,习惯性的会首先设置请求以及响应的内容类型以及编码方式:
response.setContentType("text/html;charset=UTF-8");
request.setCharacterEncoding("UTF-8");

response.setContentType()的String参数及对应类型

文件扩展名    Content-Type(Mime-Type)    文件扩展名    Content-Type(Mime-Type)
.*( 二进制流,不知道下载文件类型)    application/octet-stream    .tif    image/tiff
.001    application/x-001    .301    application/x-301
.323    text/h323    .906    application/x-906
.907    drawing/907    .a11    application/x-a11
.acp    audio/x-mei-aac    .ai    application/postscript
.aif    audio/aiff    .aifc    audio/aiff
.aiff    audio/aiff    .anv    application/x-anv
.asa    text/asa    .asf    video/x-ms-asf
.asp    text/asp    .asx    video/x-ms-asf
.au    audio/basic    .avi    video/avi
.awf    application/vnd.adobe.workflow    .biz    text/xml
.bmp    application/x-bmp    .bot    application/x-bot
.c4t    application/x-c4t    .c90    application/x-c90
.cal    application/x-cals    .cat    application/vnd.ms-pki.seccat
.cdf    application/x-netcdf    .cdr    application/x-cdr
.cel    application/x-cel    .cer    application/x-x509-ca-cert
.cg4    application/x-g4    .cgm    application/x-cgm
.cit    application/x-cit    .class    java/*
.cml    text/xml    .cmp    application/x-cmp
.cmx    application/x-cmx    .cot    application/x-cot
.crl    application/pkix-crl    .crt    application/x-x509-ca-cert
.csi    application/x-csi    .css    text/css
.cut    application/x-cut    .dbf    application/x-dbf
.dbm    application/x-dbm    .dbx    application/x-dbx
.dcd    text/xml    .dcx    application/x-dcx
.der    application/x-x509-ca-cert    .dgn    application/x-dgn
.dib    application/x-dib    .dll    application/x-msdownload
.doc    application/msword    .dot    application/msword
.drw    application/x-drw    .dtd    text/xml
.dwf    Model/vnd.dwf    .dwf    application/x-dwf
.dwg    application/x-dwg    .dxb    application/x-dxb
.dxf    application/x-dxf    .edn    application/vnd.adobe.edn
.emf    application/x-emf    .eml    message/rfc822
.ent    text/xml    .epi    application/x-epi
.eps    application/x-ps    .eps    application/postscript
.etd    application/x-ebx    .exe    application/x-msdownload
.fax    image/fax    .fdf    application/vnd.fdf
.fif    application/fractals    .fo    text/xml
.frm    application/x-frm    .g4    application/x-g4
.gbr    application/x-gbr    .    application/x-
.gif    image/gif    .gl2    application/x-gl2
.gp4    application/x-gp4    .hgl    application/x-hgl
.hmr    application/x-hmr    .hpg    application/x-hpgl
.hpl    application/x-hpl    .hqx    application/mac-binhex40
.hrf    application/x-hrf    .hta    application/hta
.htc    text/x-component    .htm    text/html
.html    text/html    .htt    text/webviewhtml
.htx    text/html    .icb    application/x-icb
.ico    image/x-icon    .ico    application/x-ico
.iff    application/x-iff    .ig4    application/x-g4
.igs    application/x-igs    .iii    application/x-iphone
.img    application/x-img    .ins    application/x-internet-signup
.isp    application/x-internet-signup    .IVF    video/x-ivf
.java    java/*    .jfif    image/jpeg
.jpe    image/jpeg    .jpe    application/x-jpe
.jpeg    image/jpeg    .jpg    image/jpeg
.jpg    application/x-jpg    .js    application/x-javascript
.jsp    text/html    .la1    audio/x-liquid-file
.lar    application/x-laplayer-reg    .latex    application/x-latex
.lavs    audio/x-liquid-secure    .lbm    application/x-lbm
.lmsff    audio/x-la-lms    .ls    application/x-javascript
.ltr    application/x-ltr    .m1v    video/x-mpeg
.m2v    video/x-mpeg    .m3u    audio/mpegurl
.m4e    video/mpeg4    .mac    application/x-mac
.man    application/x-troff-man    .math    text/xml
.mdb    application/msaccess    .mdb    application/x-mdb
.mfp    application/x-shockwave-flash    .mht    message/rfc822
.mhtml    message/rfc822    .mi    application/x-mi
.mid    audio/mid    .midi    audio/mid
.mil    application/x-mil    .mml    text/xml
.mnd    audio/x-musicnet-download    .mns    audio/x-musicnet-stream
.mocha    application/x-javascript    .movie    video/x-sgi-movie
.mp1    audio/mp1    .mp2    audio/mp2
.mp2v    video/mpeg    .mp3    audio/mp3
.mp4    video/mpeg4    .mpa    video/x-mpg
.mpd    application/vnd.ms-project    .mpe    video/x-mpeg
.mpeg    video/mpg    .mpg    video/mpg
.mpga    audio/rn-mpeg    .mpp    application/vnd.ms-project
.mps    video/x-mpeg    .mpt    application/vnd.ms-project
.mpv    video/mpg    .mpv2    video/mpeg
.mpw    application/vnd.ms-project    .mpx    application/vnd.ms-project
.mtx    text/xml    .mxp    application/x-mmxp
.net    image/pnetvue    .nrf    application/x-nrf
.nws    message/rfc822    .odc    text/x-ms-odc
.out    application/x-out    .p10    application/pkcs10
.p12    application/x-pkcs12    .p7b    application/x-pkcs7-certificates
.p7c    application/pkcs7-mime    .p7m    application/pkcs7-mime
.p7r    application/x-pkcs7-certreqresp    .p7s    application/pkcs7-signature
.pc5    application/x-pc5    .pci    application/x-pci
.pcl    application/x-pcl    .pcx    application/x-pcx
.pdf    application/pdf    .pdf    application/pdf
.pdx    application/vnd.adobe.pdx    .pfx    application/x-pkcs12
.pgl    application/x-pgl    .pic    application/x-pic
.pko    application/vnd.ms-pki.pko    .pl    application/x-perl
.plg    text/html    .pls    audio/scpls
.plt    application/x-plt    .png    image/png
.png    application/x-png    .pot    application/vnd.ms-powerpoint
.ppa    application/vnd.ms-powerpoint    .ppm    application/x-ppm
.pps    application/vnd.ms-powerpoint    .ppt    application/vnd.ms-powerpoint
.ppt    application/x-ppt    .pr    application/x-pr
.prf    application/pics-rules    .prn    application/x-prn
.prt    application/x-prt    .ps    application/x-ps
.ps    application/postscript    .ptn    application/x-ptn
.pwz    application/vnd.ms-powerpoint    .r3t    text/vnd.rn-realtext3d
.ra    audio/vnd.rn-realaudio    .ram    audio/x-pn-realaudio
.ras    application/x-ras    .rat    application/rat-file
.rdf    text/xml    .rec    application/vnd.rn-recording
.red    application/x-red    .rgb    application/x-rgb
.rjs    application/vnd.rn-realsystem-rjs    .rjt    application/vnd.rn-realsystem-rjt
.rlc    application/x-rlc    .rle    application/x-rle
.rm    application/vnd.rn-realmedia    .rmf    application/vnd.adobe.rmf
.rmi    audio/mid    .rmj    application/vnd.rn-realsystem-rmj
.rmm    audio/x-pn-realaudio    .rmp    application/vnd.rn-rn_music_package
.rms    application/vnd.rn-realmedia-secure    .rmvb    application/vnd.rn-realmedia-vbr
.rmx    application/vnd.rn-realsystem-rmx    .rnx    application/vnd.rn-realplayer
.rp    image/vnd.rn-realpix    .rpm    audio/x-pn-realaudio-plugin
.rsml    application/vnd.rn-rsml    .rt    text/vnd.rn-realtext
.rtf    application/msword    .rtf    application/x-rtf
.rv    video/vnd.rn-realvideo    .sam    application/x-sam
.sat    application/x-sat    .sdp    application/sdp
.sdw    application/x-sdw    .sit    application/x-stuffit
.slb    application/x-slb    .sld    application/x-sld
.slk    drawing/x-slk    .smi    application/smil
.smil    application/smil    .smk    application/x-smk
.snd    audio/basic    .sol    text/plain
.sor    text/plain    .spc    application/x-pkcs7-certificates
.spl    application/futuresplash    .spp    text/xml
.ssm    application/streamingmedia    .sst    application/vnd.ms-pki.certstore
.stl    application/vnd.ms-pki.stl    .stm    text/html
.sty    application/x-sty    .svg    text/xml
.swf    application/x-shockwave-flash    .tdf    application/x-tdf
.tg4    application/x-tg4    .tga    application/x-tga
.tif    image/tiff    .tif    application/x-tif
.tiff    image/tiff    .tld    text/xml
.top    drawing/x-top    .torrent    application/x-bittorrent
.tsd    text/xml    .txt    text/plain
.uin    application/x-icq    .uls    text/iuls
.vcf    text/x-vcard    .vda    application/x-vda
.vdx    application/vnd.visio    .vml    text/xml
.vpg    application/x-vpeg005    .vsd    application/vnd.visio
.vsd    application/x-vsd    .vss    application/vnd.visio
.vst    application/vnd.visio    .vst    application/x-vst
.vsw    application/vnd.visio    .vsx    application/vnd.visio
.vtx    application/vnd.visio    .vxml    text/xml
.wav    audio/wav    .wax    audio/x-ms-wax
.wb1    application/x-wb1    .wb2    application/x-wb2
.wb3    application/x-wb3    .wbmp    image/vnd.wap.wbmp
.wiz    application/msword    .wk3    application/x-wk3
.wk4    application/x-wk4    .wkq    application/x-wkq
.wks    application/x-wks    .wm    video/x-ms-wm
.wma    audio/x-ms-wma    .wmd    application/x-ms-wmd
.wmf    application/x-wmf    .wml    text/vnd.wap.wml
.wmv    video/x-ms-wmv    .wmx    video/x-ms-wmx
.wmz    application/x-ms-wmz    .wp6    application/x-wp6
.wpd    application/x-wpd    .wpg    application/x-wpg
.wpl    application/vnd.ms-wpl    .wq1    application/x-wq1
.wr1    application/x-wr1    .wri    application/x-wri
.wrk    application/x-wrk    .ws    application/x-ws
.ws2    application/x-ws    .wsc    text/scriptlet
.wsdl    text/xml    .wvx    video/x-ms-wvx
.xdp    application/vnd.adobe.xdp    .xdr    text/xml
.xfd    application/vnd.adobe.xfd    .xfdf    application/vnd.adobe.xfdf
.xhtml    text/html    .xls    application/vnd.ms-excel
.xls    application/x-xls    .xlw    application/x-xlw
.xml    text/xml    .xpl    audio/scpls
.xq    text/xml    .xql    text/xml
.xquery    text/xml    .xsd    text/xml
.xsl    text/xml    .xslt    text/xml
.xwd    application/x-xwd    .x_b    application/x-x_b
.sis    application/vnd.symbian.install    .sisx    application/vnd.symbian.install
.x_t    application/x-x_t    .ipa    application/vnd.iphone
.apk    application/vnd.android.package-archive    .xap    application/x-silverlight-app


6 response.setContentType说明

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/124895.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

scipy.interpolate插值方法介绍

文章目录scipy.interpolate插值方法1 一维插值2 multivariate data3 Multivariate data interpolation on a regular grid4 Rbf 插值方法scipy.interpolate插值方法 1 一维插值 from scipy.interpolate import interp1d 1维插值算法 from scipy.interpolate import interp1d…

u盘损坏后如何恢复数据?

u盘经常被用作移动数据存储盘。可以通过USB接口将u盘插入电脑&#xff0c;将需要复制的数据发送到u盘;然后拔掉u盘&#xff0c;插入另一台电脑的USB口打开&#xff0c;就可以把数据复制到另一台电脑上了。实现数据传输。但有使用就意味着有意外&#xff0c;当我们使用中出现了u…

Flowable教程

文章目录一、Flowable介绍1.简介2.Activiti、Flowable、Camunda二、Flowable实战&#xff08;集成Flowable Modeler&#xff09;三、流程的创建和使用1.BPMN基本概念介绍2.业务模型流程创建3.表单创建及使用4.流程的使用5.核心表介绍四、常见报错解决一、Flowable介绍 1.简介 …

3.JMeter基本组成部分

文章目录2.3 JMeter基本组成部分2.3 .1线程组2.3.1.1 添加线程组2.3.1.2 线程组的特点2.3.1.3 线程组分类2.3.1.4 线程组属性2.3.2 取样器 HTTP请求2.3.3 查看结果树2.3 JMeter基本组成部分 2.3 .1线程组 线程组是控制JMeter将用于执行测试的线程组数&#xff0c;也可以把一个…

代理模式

“接口隔离”模式 在组件构建过程中&#xff0c;某些接口之间直接的依赖常常会带来很多问题、甚至根本无法实现。采用添加一层间接&#xff08;稳定&#xff09;接口&#xff0c;来隔离本来互相紧密关联的接口是一种常见的解决方案。 典型模式 ①门面模式 ②代理模式 ③适配…

[oeasy]python0033_回车_carriage_return_figlet_字体变大

回到开头 回忆上次内容 进程前后台切换 ctrl z 把当前进程切换到后台并暂停jobs 查看所有作业 用 fg 可以把后台进程再切回前台 fg %1 可以把指定的任务切回前台用 bg 可以让进程在后台运行 进程查询 ps -elf 查看所有进程信息ps -lf 查看本终端相关进程信息kill -9 PID 给进…

部署项目到Nginx

目录 1、将vue脚手架项目打包 2、将服务端项目打为jar包后上传到linux 3、 使用nginx解决跨域问题 5、 proxy_pass配置问题 1、将vue脚手架项目打包 运行:npm run build命令将vue cli项目打包。 路径在终端会显示 在虚拟机上将此文件上传入nginx中 然后打开nginx,显示页面…

linux下以rpm包安装mysql

目录 下载 上传解压 安装 编辑my.cnf配置文件 启动数据库 修改初始密码,授权远程登录 常见问题 下载 访问以下地址下载对应操作系统下所需的版本 https://downloads.mysql.com/archives/community/ 上传解压 使用ftp或者rz命令上传压缩包到服务器并执行 tar -xvf 压…

JavaScript手写响应式原理(详解)

响应式原理 首先我们有一个对象 const obj {name: zlk,age: 18}这个对象可能在别处被用到 比如是这样的 function foo() {const newValue obj.nameconsole.log(hello world);console.log(obj.name);}我们来改变obj对象中的name的值 obj.name zlk这时候foo()应该被重新执…

Android设计模式详解之代理模式

前言 代理模式也称为委托模式&#xff0c;是一种结构型设计模式&#xff1b; 定义&#xff1a;为其他对象提供一种代理以控制对这个对象的访问&#xff1b; 使用场景&#xff1a;当无法或不想直接访问某个对象或访问某个对象存在困难时&#xff0c;可以通过一个代理对象来间…

css实现圆环、渐变色圆环的多种方式

css实现圆环、渐变色圆环的多种方式一、实现圆环方法具体如下&#xff1a;1. 两个div标签的叠加2.使用伪元素&#xff0c;before&#xff0f;after3. 使用border4. 使用border-shadow5. 使用radial-gradient二、实现渐变色圆环方法具体如下&#xff1a;1.background:linear-gra…

详细记录拉链表的实现过程

面试中被问到了&#xff0c;想了会儿思路混乱没答好&#xff0c;还是理解的不够深刻&#xff0c;重新好好理解记录一下~ 拉链表的用途&#xff0c;主要是用来在数仓中记录业务库数据的全部历史信息和当前最新信息&#xff0c;也就是用来实现对渐变维的记录。数仓中对渐变维的记…

.NET和JavaScript控件丨Infragistics功能简介

使用Infragistics Ultimate UI/UX工具包简化开发&#xff0c;提供综合的企业级 UI控件库和使用Indigo.Design的 UX设计-开发协作工具 -一个完整的设计到代码系统- 集成原型、设计系统、用户测试、应用程序构建和代码生成。 终极开发者工具包 为任何平台上的任何设备设计、现代…

minikube start

因为要安装的中间件需要运行在k8s的环境里。官方推荐用minikube 运行minikube start时遇到问题。 容器下载速度为0 &#xff08;没有截屏&#xff09;kubectl初始化超时 initial timeout of 40s passed: 解决问题1&#xff0c;需要加上–image-mirror-countrycn’参数。如果…

长短期记忆网络(LSTM)

长短期记忆网络有三种类型的门&#xff1a;输入门、遗忘门和输出门。 长短期记忆网络的隐藏层输出包括“隐状态”和“记忆元”。只有隐状态会传递到输出层&#xff0c;而记忆元完全属于内部信息。 长短期记忆网络可以缓解梯度消失和梯度爆炸。 由于序列的长距离依赖性&#…

27移除元素--双指针(快慢指针)

27移除元素–双指针&#xff08;快慢指针&#xff09; 移除元素这道题看起来很简单&#xff0c;但其蕴含的快慢指针的思想十分重要。 双for循环&#xff08;暴力法&#xff09;-- O(n2n^2n2) 使用第1个for循环 i 遍历数组所有元素 使用第2个for循环从 i 开始进行数组元素的前移…

骨传导耳机伤耳朵吗、骨传导耳机适合适用的人群有哪些?

事实上&#xff0c;骨传导耳机是对耳朵最健康的一种耳机了&#xff0c;下面就来详细说说这种耳机。 骨传导耳机是以人的骨骼为介质&#xff0c;不经过外耳道和耳膜&#xff0c;将声音传递给听觉器官的耳机。他对人的耳朵损害相比起传统的耳机损害更小&#xff0c;因为听力受损…

JavaSE笔记——Lambda表达式

文章目录前言一、第一个Lambda表达式二、如何辨别Lambda表达式三、引用值&#xff0c;而不是变量四、函数接口五、类型推断总结前言 Java 8 的最大变化是引入了 Lambda 表达式——一种紧凑的、传递行为的方式。 一、第一个Lambda表达式 Swing 是一个与平台无关的 Java 类库&a…

redhat7.6+grid 11.2.0.4部署遇到各种问题

一、add cluster node时&#xff0c;卡住 两个节点时间不同步&#xff0c;设置时间同步即可 二、部署Redhat7.6oracle11g部署中的bug Oracle 11.2.0.4 部署rac过程中&#xff0c;需要运行root.sh脚本报错。提示&#xff1a; ohasd集群无法启动。该补丁修改ohasd无法启动的问题…

红外成像系统测试

通常人们把红外辐射称为红外光、红外线。实际上其波段是指其波长约在0.75μm到1000μm的电磁波。人们将其划分为近、中、远红外三部分。近红外指波长为0.75-3.0μm;中红外指波长为3.0-20μm;远红外则指波长为20-1000μm。由于大气对红外辐射的吸收,只留下三个重要的“窗口”…