标签: java.util.scanner

Java Scanner无法读取

我试图从一个文件中读取,该文件的格式为:someName:aDoubleNumber,并返回名称和double.我写过以下扫描仪,但它不起作用,任何想法为什么?

Scanner readFile = new Scanner("text.txt");
readFile.useDelimiter(":");
while (fileScanner.hasNext()) {
String name = readFile.next();
}
Run Code Online (Sandbox Code Playgroud)

java java.util.scanner

1
推荐指数
1
解决办法
4683
查看次数

即使文件存在,FileNotFoundException也是如此

public StormAnalysis(){
    try {       
        fScanner = new Scanner(new File("tracks1949to2010_epa.txt"));
        while(fScanner.hasNextLine()){
            System.out.println(fScanner.nextLine());
        }
    } catch (FileNotFoundException e) {
        System.out.println("File not found. Try placing the tracks1949to2010_epa.txt in the same folder as StormAnalysis.java");    
        e.printStackTrace();
    }

}
Run Code Online (Sandbox Code Playgroud)

以上是我的代码(我也有一个错误的图像:http: //folk.uio.no/arnabkd/test/images/error-code-task.jpg

如您所见,txt文件与StormAnalysis.java文件位于同一文件夹中.此外,如果我将文件路径更改为"weather.dat"(作为另一个任务/问题),代码也可以工作.

任何想法将不胜感激!

java filenotfoundexception java.util.scanner

1
推荐指数
1
解决办法
5061
查看次数

你如何阅读文本文件并将其打印到控制台窗口?Java的

我想读取整个文本文件并将其全部内容存储到单个字符串中.然后我想将字符串打印到控制台窗口.我试过这个:

import java.util.Scanner;
import java.io.*;

public class WritingTextFiles{

    public static void main (String [] args) throws IOException{
        FileWriter fw= new FileWriter("testing.txt");  
        Scanner in= new Scanner (System.in);
        String testwords=in.nextLine();  
        fw.write(testwords);  
        BufferedReader r = new BufferedReader( new FileReader( "testing.txt" ) );  
        System.out.print(r);  
        fw.close();  
    }
}
Run Code Online (Sandbox Code Playgroud)

打印到控制台窗口的唯一内容是java.io.BufferedReader@18fb397.

任何人都可以向像我这样的新手解释这个吗?我的经验很少,但我当然愿意学习.我愿意接受任何建议.提前致谢!

java text file java.util.scanner

1
推荐指数
1
解决办法
2万
查看次数

如何用令牌分割用户的输入?

我需要你的建议才能做某事...我想拿用户的输入线,因为我已经在我的程序中使用扫描仪...但我想将每个命令(单词)拆分为令牌....我做不知道怎么做,直到现在我正在玩子字符串,但如果用户例如按两次空格键按钮一切都是错误的!

例如:
请插入一个命令:我今年20岁

使用substring或.split(""),它运行但考虑有:

请插入一个命令:我今年20岁

这就是为什么我需要你的建议......问题是我如何用令牌分割用户的输入.

java user-input token java.util.scanner

1
推荐指数
1
解决办法
2057
查看次数

正则表达式匹配所有不以数字开头的单词

对于noobish问题很抱歉,但我对正则表达式并不十分热衷.我有几个这样的感官:

text1.2text: text3,,text4 5. text6=== t7@ text8. T, 9-- T10我想用a scanner来返回:

a)单个字符,b)包含字符和数字的字,但是以字符开头.

其他任何东西都可以看作是分隔符.

所以在上面的句子中应该返回这些:

text1
text3
text4
text6
t7
text8
T
T10
Run Code Online (Sandbox Code Playgroud)

我可以在扫描仪"\\.|\\:|\\,|\\,,"等中使用多个分隔符,但它可能是我要提取的单词之间的任何内容,我不知道这是一个非常好的方法来完成它.

是否有正则表达式我可以用作分隔符或者可能scanner.hasNext("regex")用于提取这些单词?

提前致谢

java regex java.util.scanner

1
推荐指数
1
解决办法
2947
查看次数

什么时候调用toString()方法

我有一个例子来覆盖toString()方法.

import java.util.Scanner; 

public class Demo{ 

    String name = "";
    String age = "";

    Demo(String name, String age){
            this.name = name;
            this.age = age;
        }


    public static void main(String[] args) {  
        Scanner scanner = new Scanner(System.in);  

        System.out.print("Enter the name:");  
        String name = scanner.next();  
        System.out.print("Enter the age:");  
        String age = scanner.next();  

        Demo test = new Demo(name, age);  
        System.out.println(test);  

    }  

    public String toString() {  
        return ("Name=>" + name + " and " + "Age=>" + age);  
    }  
}  
Run Code Online (Sandbox Code Playgroud)

我的疑问是,即使从构造函数也不从main调用toString()方法,如何将Name => abc和Age => …

java constructor tostring java.util.scanner

1
推荐指数
1
解决办法
9151
查看次数

使用FileReader和Scanner读取文件

我是一个Java初学者,并已阅读类似的问题,但我仍然不知道为什么我的代码显示FileNotFound异常.我的文件在同一目录中.

我的代码是:

import java.io.*;
import java.util.Scanner;

public class reader {
    public static void main(String[] args) { 
        Scanner in = new Scanner(System.in);
        int x = in.nextInt();
        double y = in.nextDouble();
        float g = in.nextFloat();
        String a = in.next();
        File file = new File("v.txt");
        System.out.println(x + "" + y + "" + g + "" + a); 
        Scanner inFile = new Scanner(new FileReader(file));
        String u = inFile.nextLine();
        System.out.println(file.getAbsolutePath());
        System.out.println(u);
    }
}
Run Code Online (Sandbox Code Playgroud)

错误是:

17: error: unreported exception FileNotFoundException; must be caught or declared …
Run Code Online (Sandbox Code Playgroud)

java file java.util.scanner

1
推荐指数
1
解决办法
903
查看次数

只读扫描仪中的数字

想象一下,Scanner传递任何字符串输入,如"11 22 ab 22",该方法应该计算所有数字的总和(55为提到的例子).我在这里编写了一些内容,但我无法跳过字符串.有人可以帮我吗?

System.out.println("Please enter any words and/or numbers: ");
String kbdInput = kbd.nextLine();
Scanner input = new Scanner(kbdInput);
addNumbers(input);  

public static void addNumbers(Scanner input) {
    double sum = 0;
    while (input.hasNextDouble()) {
        double nextNumber = input.nextDouble();
        sum += nextNumber;
    }
    System.out.println("The total sum of the numbers from the file is " + sum);

}
Run Code Online (Sandbox Code Playgroud)

java while-loop java.util.scanner

1
推荐指数
1
解决办法
2203
查看次数

为什么hasNextInt()在这里返回false?

这是我第一次使用Java扫描文件.我正在尝试从一个文本文件中读取整数列表,对它们进行操作,然后将它们读取到另一个文件中.初始文件如下所示:

1234
9876
2345
Run Code Online (Sandbox Code Playgroud)

我正在使用while循环并使用hasNextInt进行读取(在运行程序并检查初始文本文件之后,我确定值已经存在),但是我将零输出到新文本文件,所以我假设hasNextInt ()返回false.可以肯定的是,我只是跳过扫描并使用for循环直接在每个ArrayList元素上操作,输出完全写入新文件.这是我的代码:

    try {
        File inFile = new File("input.txt");
        File outFile = new File("output.txt");

        FileWriter inWriter = new FileWriter(inFile);
        FileWriter outWriter = new FileWriter(outFile);
        Scanner inReader = new Scanner(inFile);

        numberArray.add(1234); //Adding numbers to an array that was previously initialized
        numberArray.add(9876);
        numberArray.add(2345);

        System.out.println("The raw numbers are:");

        for (int n : numberArray) {
            inWriter.write(n + "\r\n");
            System.out.println(n);
        }

        System.out.println("\nThe new numbers are:");

        while (inReader.hasNextInt()) {
            int newNumber = inReader.nextInt();
            int checkDigit = (newNumber / 7);
            int finalNumber = …
Run Code Online (Sandbox Code Playgroud)

java java.util.scanner

1
推荐指数
1
解决办法
365
查看次数

ArrayList不会存储用户输入的实例

我正在尝试使用用户输入将元素添加到ArrayList中。问题是当我尝试添加一些东西并要求将其列出时,它没有显示在列表中。

我以为这是read方法的问题,但是我不确定它是否有任何问题。另一件事是事实,添加元素的方法不在循环中,我尝试使用循环,但仍然无法正常工作。有与具有对参数的构造一部电影类titleyeargenreprice和toString方法。

预期结果:添加电影后,它应列出添加的电影。实际结果:add方法要求输入,但是当我使用list方法时,它不会列出我添加的内容。

这是完整的KioskCatalog类,用于更多上下文。

java arraylist java.util.scanner

1
推荐指数
1
解决办法
70
查看次数