From 1f84ceaea24a83b378c7968307610cb6bbdebc18 Mon Sep 17 00:00:00 2001 From: Mathieu Bastian Date: Sat, 23 Apr 2022 20:15:12 +0200 Subject: [PATCH] Fix issue #2499 --- .../plugin/file/spreadsheet/ImporterSpreadsheetCSV.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/modules/ImportPlugin/src/main/java/org/gephi/io/importer/plugin/file/spreadsheet/ImporterSpreadsheetCSV.java b/modules/ImportPlugin/src/main/java/org/gephi/io/importer/plugin/file/spreadsheet/ImporterSpreadsheetCSV.java index f9015ca22..e0d359480 100644 --- a/modules/ImportPlugin/src/main/java/org/gephi/io/importer/plugin/file/spreadsheet/ImporterSpreadsheetCSV.java +++ b/modules/ImportPlugin/src/main/java/org/gephi/io/importer/plugin/file/spreadsheet/ImporterSpreadsheetCSV.java @@ -57,6 +57,7 @@ import org.gephi.io.importer.plugin.file.spreadsheet.sheet.ErrorSheet; import org.gephi.io.importer.plugin.file.spreadsheet.sheet.SheetParser; import org.gephi.io.importer.plugin.file.spreadsheet.sheets.csv.CSVSheetParser; import org.gephi.utils.CharsetToolkit; +import org.openide.filesystems.FileObject; import org.openide.filesystems.FileUtil; /** @@ -115,8 +116,14 @@ public class ImporterSpreadsheetCSV extends AbstractImporterSpreadsheet { } private void autoDetectFieldDelimiter() { + FileObject fileObject = FileUtil.toFileObject(file); + //Return if file is empty + if (fileObject.getSize() == 0) { + return; + } + //Very simple naive detector but should work in most cases: - try (LineNumberReader reader = ImportUtils.getTextReader(FileUtil.toFileObject(file))) { + try (LineNumberReader reader = ImportUtils.getTextReader(fileObject)) { String line = reader.readLine().trim() .replaceAll(" , ", ",").replaceAll(" ; ", ";"); -- GitLab