当前位置: 首页 > 知识库问答 >
问题:

file.hasnext()不停止循环

党佐
2023-03-14

我正试图按照下面的代码读取一个txt文件:

static public void main(String[] args) throws  FileNotFoundException{
        File file = new File("C:\\Users\\Leo\\Downloads\\Ler Arquivo\\Iris.txt");
        Scanner texto = new Scanner(file) .useDelimiter(",|\n");
        Float[] sepal_length = new Float[1000];
        int i=4;
        int j=0;
        while(texto.hasNext()){
            if(i%4==0){
           System.out.println(texto.next());
            j++;
            }
            i++;
            texto.next();
}  
    }

我的txt文件如下所示:

sepal_length,sepal_width,petal_length,petal_width,species
5.1,3.5,1.4,0.2,setosa
4.9,3.0,1.4,0.2,setosa
4.7,3.2,1.3,0.2,setosa
4.6,3.1,1.5,0.2,setosa
5.0,3.6,1.4,0.2,setosa
5.4,3.9,1.7,0.4,setosa
4.6,3.4,1.4,0.3,setosa
5.0,3.4,1.5,0.2,setosa
4.4,2.9,1.4,0.2,setosa
4.9,3.1,1.5,0.1,setosa
5.4,3.7,1.5,0.2,setosa
4.8,3.4,1.6,0.2,setosa
Exception in thread "main" java.util.NoSuchElementException
    at java.util.Scanner.throwFor(Scanner.java:862)
    at java.util.Scanner.next(Scanner.java:1371)
    at ler.arquivo.Arquivo.main(Arquivo.java:22)
C:\Users\Leo\AppData\Local\NetBeans\Cache\8.2\executor-snippets\run.xml:53: Java returned: 1
BUILD FAILED (total time: 0 seconds)

当我不使用变量I时,仅用于在控制台打印我的文件,我的代码可以完美地工作。你们能帮我吗?如何将每个数据分离到数组中?我是Java初学者。

共有1个答案

汝彭薄
2023-03-14

if语句为true时,在while循环中有两行texto.next()代码,第一行由while条件检查,第二行未由任何编码控件检查。

 类似资料:
  • 启动无限循环后,我无法关闭JFrame。 我想停止无限循环使用停止按钮。 我用开始按钮开始一个无限循环。我想用“停止”按钮关闭那个回路。 > if(stop.getModel(). isP的()){中断;}不工作 actionListener用于识别按钮单击并在循环也不起作用时使用中断语句终止 点击停止按钮,无限循环必须终止。在使用start Button启动无限循环后,我无法使用JFrame中的

  • 对于最近的一个项目,我们使用Cycle2。我已升级到最新版本。我们正在使用Sitecore呈现内容。无论我采取何种方法(见下文),我都无法使autostop正常工作。我们每个幻灯片放映有2-3张幻灯片,我们希望它按以下模式移动:1-2-3-1。 我们是否在如下规则中将其呈现给自动播放: 或者如果我们让它在JS中以编程方式播放,而不使用“循环幻灯片”类: 我们正在正确加载JQuery。 在对功能做了

  • 我有一个程序,它每秒钟响一次,直到停止。问题是,在我按下“开始”并发出嘟嘟声后,我无法单击“停止”按钮,因为窗口冻结。欢迎任何帮助。

  • 问题内容: 我正在编写代码以确定nxn列表中的每个元素是否相同。即返回true,但将返回false。我正在考虑编写一个代码,当它发现与第一个元素不同的元素时立即停止。即: 我想停止此循环, 然后返回false。否则返回true。我将如何实施呢? 问题答案: 使用和为此。可以使用以下命令在Python中完成打破嵌套循环的操作: 另一种方法是将所有内容包装在函数中,并用于从循环中退出。

  • 问题内容: 我试图用图像精灵建立一个加载指示器,然后我想到了这个功能 所以输出看起来像这样 我不得不使用setBgPosition(); 在其他内部保持循环运行,所以现在我的问题是一旦我想要[加载完成],如何停止该循环? 问题答案: 返回计时器句柄,您可以使用该句柄停止超时。 因此,例如: 因此,您可以将其用作: 请注意,我没有将其再次调用,而是将其重新设置为。否则,这将行不通。另请注意,我已将超

  • 我想写一个程序,列出所有的。xml文件,然后将其复制到另一个目录并从原始目录中删除。程序的这一部分运行良好。我想这样做,我可以点击GUI中的一个按钮,让它扫描和处理文件夹,直到我按下一个按钮将其关闭。再说一次,打开它不是问题,但试图阻止它让我难堪。我想在两者之间等待一段时间,但要利用时间。sleep(x)冻结整个程序,在它停止Hibernate之前不允许我输入任何命令,只允许它处理然后再次Hibe