JAR a plik zewnetrzny

0

Witam otóż potrzebuję aby aplikacja spakowana w .jar edytowała plik tekstowy znajdujący się poza nim.

public String[] getRecords(boolean sort) throws FileNotFoundException, IOException
    {
       log.entering(getClass().getName(), "getRecords");
       
       ArrayList<String> array = new ArrayList<String>();
       BufferedReader br = new BufferedReader(new FileReader(fileName));
       
       String line=br.readLine();       
       
       while(line != null)
       {
         array.add(line);
         line=br.readLine();
                     
       }
       
       String[] tab = new String[array.size()];
       array.toArray(tab);
       
       br.close();
       
       if(sort) Arrays.sort(tab);
       
       log.exiting(getClass().getName(), "getRecords");
       
       return tab;
        
    }

Plik .jar i dany plik .txt znajduja sie w tym samym folderze. Mimo to aplikacja nie widzi tego txt.

fileName=book.txt

0

A jak uruchamiasz tego jara? Bo jeśli podajesz tylko nazwę pliku to szuka pliku w CWD (current working dir) a nie tam gdzie jest jar.

0

Plik został zbudowany poprzez NetBeans. Po paru próbach zdecydowałem sie skopiować dany plik book.txt z głównego katalogu projektu do folderu dist( celem testu) i uruchamiam go. Program nie widzi tego pliku

1

Bo jak uruchamiasz go z poziomu innego katalogu niż "dist" to plik jest szukany w katalogu w którym byłeś w trakcie uruchamiania. Jeśli robisz "run" z netbeans to zapewne szuka w głównym katalogu projektu.

0

Ok działa piknie. Wielkie THX.

1 użytkowników online, w tym zalogowanych: 0, gości: 1