2017-03-13 5 views
0

Meine Textdatei mombirthday.txt befindet sich im selben Eclipse-Verzeichnis wie meine src-Datei.Ausnahme java FileUtils.readFileToByteArray beim Versuch, fileToByteArray zu lesen

Aber eine Ausnahme wird ausgelöst (Datei existiert nicht).

Ich habe versucht, einen qualifizierten Pfad zu der Datei mit einer anderen Ausnahme zu verwenden.

ich unzählige Beispiele gefunden habe, aber ich bin mir nicht sicher, wo die Datei gespeichert werden soll und wie ich richtig den Pfad zur Datei

Mein Projekt genannt wird ReadFile-, den Quellcode und die Textdatei sind verweisen sowohl in Das src-Verzeichnis

import java.io.File; 
import java.io.IOException; 
import org.apache.commons.io.FileUtils; 

public class ReadFile { 
    public static void main(String[] args){ 
    try{ 
    //File 'mombirthday.txt' does not exist 
    //byte[] bytesInput = FileUtils.readFileToByteArray(new File("mombirthday.txt")); 

    //File 'mombirthday.txt' does not exist 
byte[] bytesInput = FileUtils.readFileToByteArray(new File("/ReadFile/src/mombirthday.txt"));** 

    }catch(IOException e){ 
    System.out.println(e.getMessage()); 
    } 
} 
} 
+1

„/ReadFile/src/mombirthday.txt“ Sie sind einen absoluten Pfad hier referenzieren./ist ein Wurzelverzeichnis – vhula

Antwort

0

Der Pfad, den Sie diesem Bibliotheksaufruf geben, weiß nicht oder interessiert sich für Ihre Projekteinrichtung.

Also, was Sie jetzt haben, zeigt auf die Wurzel Ihres Dateisystems. Für Anfänger könnte man auf einen absoluten Pfad wechseln.

0

Es ist viel besser, nicht einen absoluten Pfad zu verwenden, aber eine Datei auf dem Classpath zu platzieren, und suchen Sie es Klassenlader mit:

InputStream fileIS = getClass().getClassLoader().getResourceAsStream("mombirthday.txt"); 
StringWriter writer = new StringWriter(); 
IOUtils.copy(fileIS, writer, encoding); 
String text = writer.toString(); 
0
public static void readFile(){ 
    try { 
     // byte[] bytesInput = FileUtils.readFileToByteArray(new File("C:/Users/mavensi/Desktop/catalina_14.log")); 
     byte[] bytesInput = IoUtils.readBytes(new File("C:/Users/mavensi/Desktop/catalina_14.log")); 
     System.err.println(bytesInput.length); 
    }catch(IOException e){ 
     System.out.println(e.getMessage()); 
    } 
} 
Verwandte Themen