从java文本文件中提取令牌

从java文本文件中提取令牌,java,Java,我正在尝试使用扫描仪从文本文件中提取令牌,文本文件的名称为“ElectricToolData.txt” 文本文件的内容: // this is a comment, any lines that start with // // (and blank lines) should be ignored // data is rechargeable, power, toolName, itemCode, timesBorrowed, onLoan, cost, weight true,18V,M

我正在尝试使用扫描仪从文本文件中提取令牌,文本文件的名称为“ElectricToolData.txt”

文本文件的内容:

// this is a comment, any lines that start with //
// (and blank lines) should be ignored

// data is rechargeable, power, toolName, itemCode, timesBorrowed, onLoan, cost, weight
true,18V,Makita BHP452RFWX,RD2001,12,false,14995,1800
true,10.8V,Flex Impact Screwdriver FIS439,RD2834,14,true,13499,1200     
false,1350W,DeWalt D23650-GB Circular Saw, RD6582,54,true,14997,5400
false,1500W,Milwaukee DD2-160XE Diamond Core Drill,RD4734,50,false,38894,9000
true,10.8V,Bosch GSR10.8-Li Drill Driver,RD3021,25,true,9995,820
 false,900W,Bosch GSB19-2REA Percussion Drill,RD8654,85,false,19999,4567
true,10.8V,Flex Impact Screwdriver FIS439, RD2835,14,false,13499,1200 
true,18V,DeWalt DW936 Circular Saw,RD4352,18,false,19999,3300 
false,2100W,Sparky FK652 Wall Chaser,RD7625,15,false,29994,8400
以下是我尝试使用扫描器从文本文件中提取令牌的尝试,但未成功:

错误消息(行扫描程序):未报告的异常java.io.FileNotFoundException;必须被抓住或宣布被抛出

public void extractTokens()
    {
        //extracts tokens from the text file
        File text = new File("E:/LEWIS BC 2/project 1/ElectricToolData.txt");

       Scanner scanner = new Scanner(text);

       String toolName = scanner.next();
       String itemCode = scanner.next();
       String power = scanner.next();
       String timesBorrowed = scanner.next();
       String onLoan = scanner.next();
       String cost = scanner.next();
       String weight = scanner.next();

       //System.out.println(parts.get(1)); // "en"
    }
任何回复或帮助都将不胜感激,因为我真的很困惑。

抛出或捕获“FileNotFoundException”

我怀疑您是否没有使用Eclipse或IntelliJ之类的IDE。它将在那里抛出编译警告。无论如何,这个代码应该可以工作

public void extractTokens() throws FileNotFoundException
    {
        // extracts tokens from the text file
        File text = new File("E:/LEWIS BC 2/project 1/ElectricToolData.txt");

        Scanner scanner = new Scanner(text);

        String toolName = scanner.next();
        String itemCode = scanner.next();
        String power = scanner.next();
        String timesBorrowed = scanner.next();
        String onLoan = scanner.next();
        String cost = scanner.next();
        String weight = scanner.next();

        // System.out.println(parts.get(1)); // "en"
    }

您可能会遇到IOException和/或FileNotFoundException,因此应捕获以下2个:

public void extractTokens() throws IOException, FileNotFoundException{

    }

您必须捕获
新扫描仪(文件)
的异常,或者声明您自己正在抛出它。可能的重复您是说我可能需要复制该代码吗?还是我复制了密码?(顺便说一句lol)按照我提到的可能重复的问题的说明,你要么需要在try块中抛出一个checked异常,要么需要指定该方法抛出一个checked异常。不,我以前使用eclipse,但现在我们必须在java工作中使用BlueJ,代码现在编译成功,非常感谢:)我如何创建一个对象,调用extract并将其添加到arraylist?对不起,我不明白。打开一个新线程,发布您的问题和代码。