0

我正在尝试读取文件,然后将文件打印出来。跳过第一行。

这是我的代码。

import java.util.Scanner;
import java.io.File;
import java.io.*;
public class cas{
public static void main(String[] args) {
Scanner CL = new Scanner(new File("myBoard.csv"));
    CL.nextLine;
    while(CL.hasNext){
        String[] tempAdd = CL.nextLine.split(" ");
        for(int i = 0; i<tempAdd.length; i++)
            System.out.print(tempAdd[i] + " ");
        System.out.println();
    }

}
}

我收到此错误

cas.java:7: not a statement
    CL.nextLine;

这个语句不应该将指针移动到下一行并且什么都不做吗?

是的,它是一个方法调用,为什么编译器没有捕捉到另一个 CL.nextLine ?

4

7 回答 7

3

你必须改变——

while(CL.hasNext)

至 -

while(CL.hasNext()){

CL.nextLine.split(" ")

至 -

CL.nextLine().split(" ")

您的版本应被解释为“语法错误”。

于 2013-04-26T04:24:57.960 回答
0

见下文,我在需要的地方更改了代码。你错过了 ”()” 。

CL.nextLine();
    while(CL.hasNext()){
        String[] tempAdd = CL.nextLine().split(" ");
        for(int i = 0; i<tempAdd.length; i++)
            System.out.print(tempAdd[i] + " ");
        System.out.println();
    }
于 2013-04-26T04:26:02.833 回答
0
CL.nextLine;

这不是方法调用。你应该这样称呼它:

CL.nextLine();
于 2013-04-26T04:26:22.793 回答
0

nextLine 不应该被执行为:

CL.nextLine();

如果你只是写“CL.nextLine”,你已经说明了方法的名称,但这没有任何作用,你必须用“()”执行方法。你必须这样做

CL.hasNext();
于 2013-04-26T04:24:14.403 回答
0

Java编译器认为 nextLine 是一个公共类属性(我猜你正在尝试调用 nextLine 方法,这意味着你应该使用 CL.nextLine() )并且因为你不能拥有这样的属性而不将它分配给变量或其他东西此语句 (CL.nextLine) 无效。

于 2013-04-26T04:28:53.393 回答
0

您需要为方法使用方括号:

scanner.nextLine();                              // nextLine() with brackets->()
while (scanner.hasNext()) {                      // hasNext() with brackets->()
  String[] tempAdd = CL.nextLine().split(" ");   // nextLine() with brackets->()
  for(int i = 0; i<tempAdd.length; i++)
    System.out.print(tempAdd[i] + " ");

  System.out.println();
}
于 2013-04-26T04:29:25.190 回答
0
import java.util.Scanner;
import java.io.*;
public class puzzle {
public static void main(String[] args) {



    Scanner CL = null;

    try {
        CL = new Scanner(new File("F:\\large_10000.txt"));
    } catch (FileNotFoundException e) {

        e.printStackTrace();
    }
    CL.nextLine();
        while(CL.hasNextLine()){
            String[] tempAdd = CL.nextLine().split(" ");

            for(int i = 0; i<tempAdd.length; i++)
                System.out.print(tempAdd[i] + " ");
            System.out.println();
            break;
        }



}
}**strong text**

This code is working fine .just little mistakes.
于 2013-04-26T04:42:04.407 回答