Vinnaren i pepparkakshustävlingen!
2010-12-02, 14:55
  #1
Medlem
3pacs avatar
Sitter och försöker skriva ett program i eclipse och får ett fel som jag inte förstår mig på.
felet är: unhandled exception type FileNotFoundException
Det konstiga är att filen finns i programkatalogen och även om den inte hade funnits så hade väl programmet aldrig kommit så långt pga try-satsen?

Kod:
public class ShapeTest {
	public static void main(String[] args) {
		String filename = "shapedata.txt";
		Scanner scan = null;
		File file = new File(filename);
		
		try {scan = new Scanner(file);}
		catch (FileNotFoundException e){
			System.out.println("Filen kunde inte hittas");
			System.exit(1);
		}
		
		scan = new Scanner(file);   //Här får jag ett felet
         }
}
Citera
2010-12-02, 16:22
  #2
Medlem
-ELF-s avatar
Läste lite i boken jag har och kom fram till detta
Har testat, det fungerar.

Kod:
import java.util.*;
import java.io.*;

public class 
ShapeTest{
    public static 
void main(String[] argsthrows IOExceptionFileNotFoundException{
        
String filename "shapedata.txt";
        
Scanner scan null;
        
File file = new File(filename);
        
        try {
            
scan = new Scanner(file);
        }
        catch (
FileNotFoundException e){
            
System.out.println("Filen kunde inte hittas");
            
System.exit(1);
        }
        
        
scan = new Scanner(file);   //Nu är felet borta
        
}

Citera
2010-12-02, 17:34
  #3
Medlem
Hej!

Om problemet redan är löst eller om ELF löste det är det bara att bortse från denna post.

Men jag noterar att du försöker öppna filen med relativ sökväg.

I eclipse kan man ställa in vilket directory som är "current directory" här:
Run->Run...
Klicka på "konfigurationssymbolen" under "Eclipse application"
Välj fliken "Arguments"
Här ser man att "Working directory" är satt till C:\eclipse (för mig)

Här borde filen ligga alternativt du borde ändra till var filen ligger.

Alt 2: Öppna filen med absolut sökväg.
Citera
2010-12-02, 20:02
  #4
Medlem
3pacs avatar
kenny: working directory är rätt inställt men tack ändå
ELF: Tack, det löste problemet. Men jag förstår inte varför man måste göra så.
Citera
2010-12-02, 20:10
  #5
Medlem
-ELF-s avatar
Citat:
Ursprungligen postat av 3pac
kenny: working directory är rätt inställt men tack ändå
ELF: Tack, det löste problemet. Men jag förstår inte varför man måste göra så.
Inte jag heller, om du menar "throws IOException, FileNotFoundException"
__________________
Senast redigerad av -ELF- 2010-12-02 kl. 20:18.
Citera
2010-12-02, 21:49
  #6
Medlem
Erm, var det ett kompileringsfel vi pratade om?

Där brukar jag alltid acceptera de checked exceptions det API man anropar kastar, och i detta fall kan man ju se i javadocen att detta föreligger:

public Scanner(File source)
throws FileNotFoundException
Citera

Stöd Flashback

Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!

Stöd Flashback