while ((len = fw.read(a))!=-1)详解
时间: 2024-05-22 08:11:07 浏览: 10
这是一个在 Java 中读取文件的常见操作,具体解释如下:
1. `fw` 是一个 `FileReader` 对象,用于读取文件。
2. `a` 是一个字符数组,用于存储读取的数据。
3. `len` 是一个整型变量,用于记录每次读取的字符数。
4. `read(a)` 是 `FileReader` 类中的一个方法,用于读取数据并存储到 `a` 数组中。
5. `while` 循环用于不断读取文件,直到读取到文件结尾(返回值为 -1)。
6. 在每一次循环中,读取到的字符数会被赋值给 `len` 变量,如果 `len` 的值不等于 -1,说明还有数据可以读取,程序将继续执行。
7. 如果 `len` 的值等于 -1,说明已经读取到了文件结尾,程序将跳出循环。
因此,这段代码的作用是从文件中读取数据,并将数据存储到指定的字符数组中。
相关问题
char[] a = new char[1024]; int len; while ((len = fw.read(a))!=-1) { System.out.println(new String(a,0,len)); }
这是Java中读取文件的代码片段。其中:
- `char[] a = new char[1024]` 声明一个长度为1024的字符数组a,用于存储读取的文件内容。
- `fw.read(a)` 从文件中读取最多1024个字符到数组a中,并返回实际读取的字符数。
- `while ((len = fw.read(a))!=-1)` 当读取到的字符数不为-1时,即文件未读取到末尾时,执行循环体。
- `System.out.println(new String(a,0,len))` 将数组a中从0到len位置的字符转换为字符串并打印到控制台。
这段代码可以用来读取文本文件的内容并输出到控制台。
解析一下while((len=fis.read(data))!=-1){ out.write(data,0,len); }
这段代码是一个循环,其含义是从输入流fis中读取数据到缓冲区data中,每次读取的数据长度为len,然后将缓冲区中的数据写入输出流out中,直到读取到文件末尾(即len为-1)为止。
具体解析如下:
1. while循环:这是一个while循环,其条件是(len=fis.read(data))!=-1,即每次从输入流fis中读取数据到缓冲区data中,并将读取的数据长度赋值给len,如果读取到文件末尾,则len为-1,循环结束。
2. fis.read(data):从输入流fis中读取数据到缓冲区data中,返回值为读取的数据长度,如果读取到文件末尾,则返回-1。
3. out.write(data,0,len):将缓冲区data中的数据写入输出流out中,写入的数据长度为len,即每次写入读取到的数据长度,从缓冲区data的第0个位置开始写入。
4. 总结:这段代码的作用是将输入流fis中的数据读取到缓冲区data中,然后将缓冲区中的数据写入输出流out中,直到读取到文件末尾。
相关推荐
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)