Файл чтения Eclipse из ресурса NullPointerException - PullRequest
0 голосов
/ 21 сентября 2018

Я новичок, поэтому, пожалуйста, не бейте меня слишком сильно.Я пытался выяснить это в течение 2 дней, читая посты и блоги, и у меня появляется ошибка NullPointerException, и я не могу понять, почему она не достигает файлов.Ниже я показываю расположение моих папок, я пробовал это несколькими способами, помещая папку ресурсов в папку src или снаружи, и я все еще получаю ту же ошибку.

Folder Config

Вот мой код, который я использую.

package com;

import java.io.File;
import java.io.IOException;
import java.nio.file.Files;

public class ClasspathFileReader
{
    public static void main(String[] args) throws IOException
        {
        String fileName = "resource/SrcPath.txt";
        ClassLoader classLoader = ClassLoader.getSystemClassLoader();

        File file = new File(classLoader.getResource(fileName).getFile());


        //Read File Content
        String content = new String(Files.readAllBytes(file.toPath()));
        System.out.println(content);
    }
}

Трассировка стека:

Exception in thread "main" java.lang.NullPointerException
    at com.ClasspathFileReader.main(ClasspathFileReader.java:14)

Ответы [ 3 ]

0 голосов
/ 21 сентября 2018

Используя classloader, ваш файл должен находиться в папке вашего класса, т.е. src.Поместите свой SrcPath.txt в папку src, и он будет отлично работать.

0 голосов
/ 21 сентября 2018

У меня есть два комментария к вашему коду:

  • Как указал @yilmaz, переименуйте ваш файл в SrcPath.txt.Просто используйте параметр rename в eclipse.

  • getResource () ищет file относительно вашего файла .class.Таким образом, создайте пакет resource внутри вашей папки src и сохраните файл SrcPath.txt здесь.

0 голосов
/ 21 сентября 2018

Ваш файл (SrcPath) не заканчивается расширением .txt согласно скриншоту.Попробуйте.

...