Ошибка чтения моего CSV-файла в классе в Java приложении - PullRequest
1 голос
/ 21 апреля 2020

Мне нужно прочитать файл sample.csv из того же класса, что и мой основной. Ниже вы можете увидеть структуру.

enter image description here Это мой код, но при запуске он выдает ошибку, что sample.csv не найден!

public int convertFile(String csvFileName, String xmlFileName,
                    String delimiter) {
        int rowsCount = -1;
        BufferedReader csvReader;
        try {
            Document newDoc = domBuilder.newDocument();
            // Root element
            Element rootElement = newDoc.createElement("XMLCreators");
            newDoc.appendChild(rootElement);
            // Read csv file
            csvReader = new BufferedReader(new FileReader(csvFileName));
            CSVReader reader = new CSVReader(new FileReader("sample.csv"));
            //CSVReader reader = new CSVReader(csvReader);
            String[] nextLine;
            int line = 0;
            List<String> headers = new ArrayList<String>(5);
            while ((nextLine = reader.readNext()) != null) {
....

Может кто-нибудь предложить мне в чем проблема?

1 Ответ

1 голос
/ 21 апреля 2020

Без относительного или абсолютного пути он напрямую связан с «текущим» каталогом. Таким образом, НЕ имеет большого значения, что файл .csv находится в определенном пакете, , но важно, что при запуске приложения «рабочий» каталог - это именно тот каталог, который содержит файл. . Вы используете Eclipse, go для просмотра конфигурации запуска (меню «Пуск» -> «Выполнить конфигурации ...») , используемой для запуска приложения, вкладка «Аргументы». See Attachment for same

Вы можете получить путь следующим образом.

URL url = YourClassName.class.getResource("sample.csv");
FileReader fileReader = new FileReader(url.getFile());
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...