为什么我们将InputStream read()方法的返回值与-1进行比较?

时间:2017-07-29 06:23:33

标签: java

在这个while语句中while ((c = in.read()) != -1) -1是什么意思?有关详细信息,请参阅以下计划:

 import java.*;

    public class CopyFile 
    {

     public static void main(String args[]) throws IOException 
         {  

          FileInputStream in = null;

          FileOutputStream out = null;

          try {
             in = new FileInputStream("input.txt ");
             out = new FileOutputStream("output.txt");

             int c;
             while ((c = in.read()) != -1) 
            {
                out.write(c);
             }
          }
         finally 
        {
             if (in != null) {
                in.close();
             }
             if (out != null) {
                out.close();
             }
          }
       }

}

1 个答案:

答案 0 :(得分:2)

read() method返回int

  

返回:

     

下一个数据字节,如果到达文件末尾则为-1。

只是知道数据是否仍然存在或者是否到达文件的末尾。