00:00
现在文件有了,如果运行到这儿,他一定在这里边生成一个文件,文件有了,下边来做这个,把这个文件下载到用户电脑中,那如何下载,就是咱们昨天给大家讲的那些知道吧,然后呢,这个是,然后呢这个是。文件下载吧,把生成的文件,把生成的生成的Excel文件文件,然后下载到用户客户端吧,下载到客户端吧,下载到用户电脑上吧,是吧,然后呢,这个地方来一个是吧?那文件下载又分为那几步是吗?对第一步干什么?对,设置响应类型是吗?第一步设置响应,第二步获取是输出流,第三步呢,读Excel文件往外输出,最后是不是设置一个响应头信息啊,就这几步网死的,这语法全都死的,所以那下边我们就做这个事了,设置那么响应类型,那我要拿到response了,拿response在这儿是不是注入进来了,注意叫HTTV是吧,叫solid response,然后呢,拿到它设置下类型。
01:11
这就这些注释我就不写了啊,我就直接来了设置响应小set set count的态度,那在这里边写什么?对application,然后呢,下边是O,然后呢杠stream是个二进制,二进制流,然后呢,这个地方来个编码格式都采用对UTF账包,这是什么?设置小类,下边来获取输出流,获取输出流response,叫get,叫outputscript,获取这个是字节输出流outputscript,然后定一个变量去接收它,拿这个变量来一个,这个是叫output sleep,然后呢,这个地方来一个我就写out,知道吧,好,然后呢,再看拿到它之后呢,下边是不是就读那个文件叫读我们刚刚生成这个文件,然后呢,一个缓冲区,一个缓冲区读,每读一个缓冲区往往写一个,每读一个就写一个,那我。
02:12
那读这个文件我是不是得通过文件输入流啊,对,文件输入流叫new,一个fire input space,读文件要用文件输入,那这个这个文件在哪呢?对,是不是就是刚上面刚刚生成的这个,对,直接把这个路径写到出,然后呢,这样来就可以了,这然后呢,得到一个叫input资spring input这样,所以大家要跟上思路,我们说这样,然后呢,这样就拿到,拿到输入流,通过这个流就能够读进来了,然后往外写,那往外写默认情况下是一个字节,一个字节的写,就是这个input,这个input stream有个read,你知道吗?默认情况下你要不用缓冲区,默认情况每次读一个字节知道吗?那读一个字节一个字节读的话效率太低了,知吧,所以我们定一个缓冲区,这个缓冲区就是一个字节数组,多个字节多个字节的读,那这个缓冲区的名字你随便起了,我也叫到了,你有一个来一个叫BY,然后呢,这个字节我们通常用这个这样,然后呢,每次读多少个字节,定一个记录字节的个数的对吧?那下边就放到循环里边去读了,对,下边放到循环里边去读这个文件组,那读的时候通过这个输入流叫read啊read,然后呢,每次读一个buffer是吧?那读buff法读榜了吗?不一定,然后呢,记录每次读了几个字节,读到什么时候算完,对,不等于负一的时候是吧?读,读到负一就算完了,就换。换句话来说,只要不等于负一,我一直循环进去读,知道吧,只要不等于负一,我就一直读下去,知道吧。
03:58
直到等于负一,我就不读了,就这意思,那每次读一个buff,那我就把这B法往外写了,怎么写?对,通过输出流往外写,输出流叫right,在这个地方输出流叫right往外写,然后呢,往外写,写什么写这个buffuff,那是不是把整个buff法都写出去了,不一定,你看你这次读这个八法读满了嘛,读满往往写满,然没读满从第零个元素开始开始写,写到哪儿,你这次读几个字节就写到哪个元素,这样的话在我们这个地方就行吧,读完了也写完了,这样的话我们就该可以完了,之后呢,那下边呢,都往外输出了,都往出了,该关闭的资源关闭,该刷新的数据刷走就行了,所以那说关闭的资源,我们自己开的资源自己关了,输入流自己关,然后呢,这个autout stream,他什么对,刷一下把我的数据刷走就行了,对,那将来有他不开的自己去关理。
04:59
但你得把你的数据刷走,如果你的数据不刷走不行。
05:03
有可能造成数据丢失,知道吗?你知道为什么有丢失,万一他放到缓冲区里边,还没来得及输出的浏览器呢,这个时候吧,你要如果不刷他这个数据一关的时候就没了,是所以大哥你要刷一下,这样不会造成数据丢失了,好这样的话,大哥我们这个。整个这个把这个Excel文件也往外输出了,输出完了这个什么,整个这个程序我们行了CTRL了,知道吗?这个CTRL来就行了,这就是按照我们设计来的,你看吧,这就按设计来了,一步一步。你只要技术上不存在问题了,那这些的话,流程就会涉及了,代码就是最好写的,所以一开始我就给大家说了是吗?你们以前还没体会到什么,现在大家应该差不多,应该慢慢有体会了,说程序员是吧,最简单的时候对你来说就写代码,就写代码,最简单的时就写代码,你只要是分析好了,设计好了,代码就太好写了,知道吧,而且现在你写的代码还没有那么多的,以后你会常年的写这些代码。
06:07
甚至么,你闭着眼闭着眼都能写出来。你想想你常年的写,上午写下午写,晚上加班写吗?对,天天写这些代码,就这些东西,你想想他简单不简单是吗?他就太简单了,是对太简单了,对所以这个我们说这个写代码,写代码就是这样是吧,当然你前,但是写代码之前这个准备工作,这个准备工作才是最难的,才是最值钱的,越难越值钱,写代码不值钱知那写代码懂不行,你写代码你写你写五年写十年,你你要如果别人给你设计好,你只写代码,你的工资不可能涨上去,说你工资一般来讲,你说像在北京这边应该说超过超过2万块钱,或者超过25000,你很难就是现在,嗯。就是你要如果只只写代码,你不会设计,不会读需求,你有一个封顶的一个封封顶的一个过程,因为写代码不是创造性的劳动,分析才是创造性的劳动。这是我们这。
我来说两句