Ich versuche, in einer TSV-Datei in ein Dataframe-Objekt mit dem folgenden Code zu lesen:Databricks funken csv-Check für leere Datei
SQLContext sqlContext = new SQLContext(javaSparkContext);
Map<String, String> sqlContextOptions = new HashMap<>();
sqlContextOptions.put("header", "true");
sqlContextOptions.put("delimiter", "\t");
DataFrame df = sqlContext.read()
.format("com.databricks.spark.csv")
.options(sqlContextOptions)
.load(path);
Gerade jetzt, wirft der Code eine UnsupportedOperationException wenn es eine leere Begegnungen Datei. Ich möchte mit leeren Dateien umgehen, aber ich möchte nicht davon ausgehen, dass diese Ausnahme immer eine leere Datei bedeutet. Wie überprüft man am besten, ob die angegebene Datei leer ist?
Also müssen Sie die Datei zuerst manuell überprüfen? Das ist eine Schande. Es fühlt sich an, als müsste etwas wie eine Überprüfung der leeren Datei eingebaut worden sein. – alexgbelov
Ja, ich kenne keinen anderen Weg. Ich überprüfte die neueren Funktionen in Java 8, aber es gibt nichts (soweit ich dazu kam), das automatisch überprüfen würde. –