In Ihrem Java-Projekt tritt beim Versuch, auf einen Text zuzugreifen, ein Fehler auf Datei aus einem angegebenen relativen Pfad. Dieser Fehler entsteht dadurch, dass die Klasse java.io.File den angegebenen Pfad nicht finden kann.
Um dieses Problem zu beheben, wird empfohlen, die Datei aus dem Klassenpfad abzurufen, anstatt sich auf das Dateisystem zu verlassen. Dadurch entfällt die Notwendigkeit relativer Pfade und Sie stellen sicher, dass die Datei unabhängig vom aktuellen Arbeitsverzeichnis abgerufen wird.
Angenommen, die Datei ListStopWords.txt befindet sich im selben Paket wie die FileLoader-Klasse, Folgendes Code zeigt, wie man die Datei aus dem Klassenpfad erhält:
URL url = getClass().getResource("ListStopWords.txt");
File file = new File(url.getPath());
Alternativ können Sie Folgendes verwenden, wenn Ihr einziger Zweck darin besteht, einen InputStream für die Datei zu erhalten:
InputStream input = getClass().getResourceAsStream("ListStopWords.txt");
Dieser Ansatz wird bevorzugt, da er verschiedene Dateisystemdarstellungen unterstützt. einschließlich virtueller Dateisysteme und Netzwerkpfade.
Wenn es sich bei der Datei außerdem um eine Eigenschaftendatei handelt, die Schlüssel-Wert-Paare enthält, können Sie sie direkt aus dem InputStream laden:
Properties properties = new Properties();
properties.load(getClass().getResourceAsStream("ListStopWords.txt"));
Bitte beachten Sie, dass Sie getClass() durch YourClass.class ersetzen sollten, wenn Sie aus einem statischen Kontext auf die Datei zugreifen ( wobei YourClass den Namen Ihrer Klasse darstellt).
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3