Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/355.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在无限循环中使用BufferedWriter_Java_Loops_Filewriter_Bufferedwriter - Fatal编程技术网

Java 在无限循环中使用BufferedWriter

Java 在无限循环中使用BufferedWriter,java,loops,filewriter,bufferedwriter,Java,Loops,Filewriter,Bufferedwriter,我是否可以在无限循环的每次迭代期间使用BufferedWriter(或任何writer类)将新行输出到文本文件,直到程序停止?据我所知,必须调用BufferedWriter.close()命令才能将文本保存到文件中,但如果写入程序在循环内关闭,程序将抛出异常-显然,如果写入程序设置为在循环外关闭,则无法访问该语句。提前感谢您的帮助 以下是相关代码: int count = 0; BufferedWriter out = new Buffered

我是否可以在无限循环的每次迭代期间使用BufferedWriter(或任何writer类)将新行输出到文本文件,直到程序停止?据我所知,必须调用BufferedWriter.close()命令才能将文本保存到文件中,但如果写入程序在循环内关闭,程序将抛出异常-显然,如果写入程序设置为在循环外关闭,则无法访问该语句。提前感谢您的帮助

以下是相关代码:

             int count = 0;
             BufferedWriter out = new BufferedWriter(new FileWriter("myTextFile.txt"));
             while (true) 
             {

                if(count == 0){
                    out.write(myString);
                    out.newLine();
                    System.out.println(myString);
                } else {
                    out.append(myString);
                    out.newLine();
                    System.out.println(myString);

                }
                System.out.println("count = " + count);
                count++;
                out.flush();
                out.close();                   
             }

如果您只想确保所有数据都写入文件,flush将完成此操作。Close主要用于释放资源,尤其是在显式调用flush时

刷新-刷新流

关闭-关闭流,首先冲洗流。一旦关闭流,进一步的write()或flush()调用将导致抛出IOException。关闭以前关闭的流没有效果


更多信息:

如果您只想确保所有数据都写入文件,flush将执行此操作。Close主要用于释放资源,尤其是在显式调用flush时

刷新-刷新流

关闭-关闭流,首先冲洗流。一旦关闭流,进一步的write()或flush()调用将导致抛出IOException。关闭以前关闭的流没有效果


更多信息:

如果您只想确保所有数据都写入文件,flush将执行此操作。Close主要用于释放资源,尤其是在显式调用flush时

刷新-刷新流

关闭-关闭流,首先冲洗流。一旦关闭流,进一步的write()或flush()调用将导致抛出IOException。关闭以前关闭的流没有效果


更多信息:

如果您只想确保所有数据都写入文件,flush将执行此操作。Close主要用于释放资源,尤其是在显式调用flush时

刷新-刷新流

关闭-关闭流,首先冲洗流。一旦关闭流,进一步的write()或flush()调用将导致抛出IOException。关闭以前关闭的流没有效果

更多信息:

您应该使用方法并在
finalize()
方法中提取

使用将允许您在应用程序写入文本文件时在文本文件中查看结果

当您停止应用程序时,GC将调用finalize方法并关闭流。

您应该使用方法并在
finalize()
方法中提取您的

使用将允许您在应用程序写入文本文件时在文本文件中查看结果

当您停止应用程序时,GC将调用finalize方法并关闭流。

您应该使用方法并在
finalize()
方法中提取您的

使用将允许您在应用程序写入文本文件时在文本文件中查看结果

当您停止应用程序时,GC将调用finalize方法并关闭流。

您应该使用方法并在
finalize()
方法中提取您的

使用将允许您在应用程序写入文本文件时在文本文件中查看结果



当您停止应用程序时,GC将调用finalize方法并关闭流。

而且您不能将关闭函数放在while循环之外?为什么不让一个值来确定何时停止循环,在希望程序退出时设置该值,然后在循环结束后关闭资源。你是被迫进行无限循环还是不控制程序何时关闭?@Austin如果编写器在无限循环之外关闭,则无法到达该语句。@aherbets哦,哎呀……完全没有了这一点(@Andrew_CS-我使用的是无限循环,因为程序每90秒通过多播接收一次文本-文本被解析,然后更新到文本文件-这必须持续到用户停止程序。而且你不能将关闭函数放在while循环之外。为什么不让一个值确定何时停止循环g、 当您希望程序退出时设置该值,然后在循环结束后关闭资源。您是被迫进行无限循环还是不控制程序何时关闭?@Austin如果编写器在无限循环之外关闭,则不会到达该语句。@aherbets哦,哎哟……完全忽略了这一点:(@Andrew_CS-我使用的是无限循环,因为程序每90秒通过多播接收一次文本-文本被解析,然后更新到文本文件-这必须持续到用户停止程序。而且你不能将关闭函数放在while循环之外。为什么不让一个值确定何时停止循环g、 当您希望程序退出时设置该值,然后在循环结束后关闭资源。您是被迫进行无限循环还是不控制程序何时关闭?@Austin如果编写器在无限循环之外关闭,则不会到达该语句。@aherbets哦,哎哟……完全忽略了这一点:(@Andrew_CS-我使用的是无限循环,因为程序每90秒通过多播接收一次文本-文本被解析,然后更新到文本文件-这必须持续到用户停止程序。而且你不能将关闭函数放在while循环之外。为什么不让一个值确定何时停止循环g、 当您希望程序退出时设置该值,然后在循环结束后关闭资源。您是被迫进行无限循环还是不控制程序何时关闭?@Austin如果编写器在无限循环之外关闭,则不会到达该语句。@aherbets哦,哎哟……完全忽略了这一点:(@Andrew_CS-我用的是英菲尼