请问在3-4的视频中如何上传带中文的文件?对IO输入输出这些不太熟。。。

来源:3-4 文件上传代码的实现

natsusora

2019-10-19 20:04:12

如题

写回答

1回答

好帮手慕小班

2019-10-20

同学你好,1、这里上传带中文的文件,这里同学的意思老师没有理解,比如课程中上传的 a.txt文件,这个文件中就可以写有中文,所以按照视频中的步骤就可以上传带中文的文件。

如果不是这个意思,这里还麻烦同学具体描述一下自己的问题。

2、在课程中,is是获取到上传的文件内容:

http://img.mukewang.com/climg/5dabc6d509cc2f8b10040536.jpg

如上:byte是字符数组,在输入流和输出流之间做字符缓冲作用,我们一点一点来接卸这些代码内容:

        InputStream.read(byte[] b)方法从字符数组b里面读取数据,返回值为int类型,把实际读取的字节数作为整数返回。如果b的长度为零,则不读取字节,返回0; 否则,将尝试读取至少一个字节。如果读取到文件的末尾而没有可用的字节,则返回值-1

        所以len = is.read(b)做到了边读取,边把这次读取的字节赋值给len

        前几次循环时数组被写满,所以len=1024,当读到流的末尾时,数组没有被写满,len就是剩余的字节数。

        再一次进入循环时由于is已经被读完,所以is.read(b)返回-1,循环结束。

此时就将内存中的文件内容通过输出流全部写入到os流对应的文件夹下啦。

如果我的回答解决了你的疑惑,请采纳,祝学习愉快~

0

0 学习 · 9666 问题

查看课程