import java.util.*;
import java.io.*;
import java.*;
public class b {
static void lireBddParcs(String nomFichier) throws IOException
{
LinkedHashMap parcMap = new LinkedHashMap<Parc,Collection<Manege>> ();
boolean existeFichier = true;
FileReader fr = null;
try
{
fr = new FileReader (nomFichier);
}
catch(java.io.FileNotFoundException erreur)
{
System.out.println("Probleme rencontree a l'ouverture du fichier" + nomFichier);
existeFichier = false;
}
if (existeFichier)
{
Scanner scan = new Scanner(nomFichier).useDelimiter("\t");
while (scan.hasNextLine())
{
String nom = scan.next();
String ville = scan.next();
String etat = scan.next();
Parc p = new Parc(nom, ville, etat);
parcMap.put(p, null);
}
scan.close();
}
}
public static void main(String[] args) throws IOException
{
lireBddParcs("parcs.txt");
}
}
parc.txt包含:
Great America Chicago Illinois
Magic mountain Los Ageles Californie
Six Flags over Georgia Atlanta Georgie
Darien Lake Buffalo New York
La Ronde Montreal Quebec
The Great Escape Lake Georges New York
Six Flags New Orleans New Orleans Louisiane
Elitch Gardens Denver Colorado
Six Flags over Texas Arlington Texas
Six Flags New England Springfield Massachusetts
Six Flags America Washington D.C.
Great Adventure Jackson New Jersey
我明白了:
--------------------Configuration: <Default>--------------------
Exception in thread "main" java.util.NoSuchElementException
at java.util.Scanner.throwFor(Scanner.java:907)
at java.util.Scanner.next(Scanner.java:1416)
at b.lireBddParcs(b.java:54)
at b.main(b.java:94)
我一直在尝试将程序修复3个小时。而上帝,我是愚蠢的。我不知道这个程序有什么问题!
答案 0 :(得分:0)
您传入的文件名为String而不是File对象本身,因此您的所有扫描程序都是“扫描”。通过首先从文件String创建文件,然后将其传递到扫描程序来解决此问题。
所以不,
Scanner scan = new Scanner(nomFichier)
而是
Scanner scan = new Scanner(new File(nomFichier))
下次,请对我们要求的问题进行编辑。我们是志愿者,你有责任不理解你的问题并回答它,这是不必要的。