Java 程序跳过每一行,但不知道为什么
我的程序打印该行上的所有数据,但仅每隔一行打印一次。我知道这与“nextLine”有关,但我找不到导致问题的原因Java 程序跳过每一行,但不知道为什么,java,arrays,lines,skip,Java,Arrays,Lines,Skip,我的程序打印该行上的所有数据,但仅每隔一行打印一次。我知道这与“nextLine”有关,但我找不到导致问题的原因 import java.io.*; import java.util.*; public class hw2 { public static void main (String[] args) throws Exception { String carrier; int flights; int lateflights; int r
import java.io.*;
import java.util.*;
public class hw2
{
public static void main (String[] args) throws Exception
{
String carrier;
int flights;
int lateflights;
int ratio;
String[][] flightData= new String [221][3];
String[] temp;
File file = new File ("delayed.csv");
Scanner csvScan = new Scanner(file);
int c = 0;
while ((csvScan.nextLine()) != null){
String s = csvScan.nextLine();
temp = s.split(",");
for(int i =0; i < temp.length ; i++)
System.out.println(temp[i]);
flightData[c][0] = temp[1];
flightData[c][1] = temp[6];
flightData[c][2] = temp[7];
c = c+1;
}
}
import java.io.*;
导入java.util.*;
公共级hw2
{
公共静态void main(字符串[]args)引发异常
{
弦载波;
国际航班;
国际晚点航班;
整数比;
字符串[][]flightData=新字符串[221][3];
字符串[]温度;
文件=新文件(“delayed.csv”);
扫描仪csvScan=新扫描仪(文件);
int c=0;
而((csvScan.nextLine())!=null){
字符串s=csvScan.nextLine();
温度=s.split(“,”);
对于(int i=0;i
}考虑一下这种方法(请参阅):
Facepalm Ofc+1这是正确答案。是的,您在while循环中的测试实际上从扫描仪中删除了一行。将其更改为hasNextLine(),将停止跳过行。
Scanner csvScan = new Scanner(file);
while (csvScan.hasNextLine()) {
String s = csvScan.nextLine();
// for testing
System.out.println(s);
// ... rest of code
}