Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/355.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java扫描程序不工作_Java_Csv - Fatal编程技术网

Java扫描程序不工作

Java扫描程序不工作,java,csv,Java,Csv,此CSV阅读器还通过使用地图工具检查电子邮件地址和密码的有效性 import java.io.*; import java.util.*; public class CSVReaders{ public static void run(String[] args) throws Exception { Map<String, String> emailPasswordMap = new HashMap<String, String> (); Buff

此CSV阅读器还通过使用地图工具检查电子邮件地址和密码的有效性

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

public class CSVReaders{

public static void  run(String[] args) throws Exception {
    Map<String, String> emailPasswordMap = new HashMap<String, String> ();
    BufferedReader CSVFile =
        new BufferedReader(new FileReader("testa453.csv"));
    String dataRow = CSVFile.readLine();
    while (dataRow != null){
        String[] dataArray = dataRow.split(",");
        emailPasswordMap.put (dataArray[0], dataArray[1]);
        dataRow = CSVFile.readLine();
    }
    CSVFile.close();
    //Scanner in = new Scanner(System.in);
    //String email = in.nextLine();
    //String password = in.nextLine();
    String password = ("raj45");
    String email = ("rakhter@bluebell.org");
    if (password.equals (emailPasswordMap.get (email))) {
        System.out.println ("The entered email and password are valid");
    }
    else {
        System.out.println ("The entered email and password are invalid");
    }

}
import java.io.*;
导入java.util.*;
公共类CSVReader{
公共静态无效运行(字符串[]args)引发异常{
Map emailPasswordMap=newhashmap();
BufferedReader CSVFile=
新的BufferedReader(新的文件阅读器(“testa453.csv”);
字符串dataRow=CSVFile.readLine();
while(dataRow!=null){
字符串[]dataArray=dataRow.split(“,”);
emailPasswordMap.put(dataArray[0],dataArray[1]);
dataRow=CSVFile.readLine();
}
CSVFile.close();
//扫描仪输入=新扫描仪(系统输入);
//字符串email=in.nextLine();
//字符串password=in.nextLine();
字符串密码=(“raj45”);
字符串电子邮件=(“rakhter@bluebell.org");
if(password.equals(emailPasswordMap.get(email))){
System.out.println(“输入的电子邮件和密码有效”);
}
否则{
System.out.println(“输入的电子邮件和密码无效”);
}
}
}

我遇到的问题是,在运行时,当我将“/”改为字符串密码和电子邮件,并尝试使用扫描仪时,我包括程序“运行”,但控制台窗口没有出现,我必须强制停止程序以停止其运行。正如我在这里所展示的那样,使用它时,它工作得非常完美。之前,我在扫描仪上遇到了一个与静态和非静态变量相关的错误。我查找了它们,并尝试使用实例变量,但收效甚微。 我声明扫描仪的方式是错误的还是不能将映射与扫描仪结合使用

编辑:我目前正在Mac上使用BlueJ,因为我对java编程相当陌生。是的,正如我所引用的,它确实可以工作,只有当我尝试使用扫描仪时,它才会停止工作

我声明扫描仪的方式是错误的还是不能将映射与扫描仪结合使用

扫描仪
声明似乎是正确的。不,没有任何限制禁止同时使用Java标准库的任何两个部分。因此,将
Map
Scanner
一起使用完全可以


目前,SO社区的最佳猜测是您正在使用具有内置控制台窗口/视图的IDE(如eclipse)。在此假设下,假设您希望打开一个黑色的terminal/cmd窗口,但是在大多数IDE中情况并非如此。在eclipse中,“控制台视图”是您进行输入的地方。在Netbeans中,这将是一个输出窗口。

因此,如果它对您有效,为什么您至少还没有在您的应用程序中接受答案呢?缺少用于程序输入的
main
函数让我感到怀疑。它是否与(当前发布的代码)上的注释一起运行,因为没有
main
方法?你是如何运行你的程序的?我认为您需要将方法重命名为
publicstaticvoidmain(String[]args)抛出异常{
。我现在已经完成了。对于任何问题,我感到抱歉。我仍然是stackoverflow新手。另外,yogendra它在我发布它时与上面的评论完美配合,并且将其更改为main也没有什么区别。虽然如果我尝试使用扫描仪,同时将其设置为main方法,它的功能与“run”相同。是否可以您正在使用Eclipse而控制台窗口没有显示?如果您有一个正确的main方法,在本例中,只需从菜单窗口>显示视图>控制台中选择…您应该能够在那里键入字符串