Exception in thread "main" java.lang.NullPointerException

0

Exception in thread "main" java.lang.NullPointerException
at zamtoifs2.Main.newZam(Main.java:62)

public static void newZam() {
String directory = "C:/EBI/import";
File dir = new File(File.separator + directory);
String[] plik = dir.list();

if (plik.length > 0)   -------- w tej lini wywala ten wyjatek.... to jest 62 linia... pomocy
0

można jaśniej bo nie kumam o co chodzi z tym direm ?

0

File dir = new File(File.separator + directory);

File.separator + "C:/..." = "/C:/..."

Czyli do takiej ścieżki się nie dostaniesz na pewno bo masz / przed C

http://docs.oracle.com/javase[...]/java/io/File.html#list%28%29
Zobacz sobie co zwraca list.
próbujesz length z pliku wyciągnąć, a plik jest null bo list() zwróciło null, a list() zwróciło null bo masz niepoprawną ścieżkę, co za tym idzie sypnęło CI wyjątkiem

0

A jesli ta sciezka odnosci sie do lokalizacji na serwerze a nie na komputerze osobistym ?

0
<quote="864127">File dir = new File(File.separator + directory); File.separator + "C:/..." = "/C:/..." Czyli do takiej ścieżki się nie dostaniesz na pewno bo masz / przed C Więc jak to zadeklarowac, zeby sciezka wczytywala sie poprawnie ?
0

no wiem rozumiem o co chodzi. Tylko sprawa wyglada tak, ze ten program nie został napisany przeze mnie a zrodło wyciagnalem z pliku jar. I teraz mam problem z jego ponowna kompilacja. Jak w takim razie dostac sie do tej lokalizacji zeby nie wstawiało mi tego " / " przed C ?

0

No bo powyzej napisales, ze tworzy mi niepoprawna sciezke bo dodaje \ przed C i wywala blad bo sciezka jest niepoprawna. Jak zatem uzyskac poprawna sciezke ?

0

wiesz co sprawdzałem juz tak dosłownie 30 minut temu i też wyrzuca ten sam bład ;/

0

String directory = "C:/EBI/import";
    File dir = new File(directory);

    if( ! dir.exists() )
       System.out.println("Katalog nie istnieje");

    String[] plik = dir.list();

co sprawdzenie wyswietli?

0

nie ma takiej sciezki na systemie windows :"C:/EBI/import"
jest natomiast = "C:\EBI\import"
czyli jak bys chcial ja do zmiennej String zapisac, to zrobilbys to prawdopodobnie tak:
String directory = "C:\EBI\import";

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