/**
* @(#)b.java
*
*
* @author
* @version 1.00 2012/5/4
*/
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(new File(nomFichier));
while (scan.hasNextLine())
{
String[] line = scan.nextLine().split("\t");
Parc p = new Parc(line[0], line[1], line[2]);
parcMap.put(p, null);
}
}
scan.close();
}
}
/**
* @param args the command line arguments
*/
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
error: class, interface, or enum expected line 94
error: class, interface, or enum expected line 99
我决定更改我的代码,因为某些内容没有按预期运行,但现在我得到了这个。无法通过编译。知道为什么它不起作用吗?我是一个完全放弃我的java课程的小道。
答案 0 :(得分:3)
虽然缩进令人困惑,但主要方法是在类之外,而它应该在其中。
它还会使行scan.close();
无效,因为scan
未在此处定义。删除}
之前的scan.close();
。
答案 1 :(得分:2)
这只是因为你的第一种方法中有一个无关的括号:
}
scan.close();
如果您使用eclipse或netbeans等IDE来编辑源文件,那么自动大括号匹配和突出显示这些错误将会有很大帮助。