2015-06-02 17 views
5

Ich möchte this code ändern, so dass es nur mit einer bestimmten Datei funktioniert, aber ich kann nicht den richtigen URL-Parameter und alle Codebeispiele, die ich habe gefunden benutze einen Dateiauswahldialog.Wie öffne ich eine lokale Datei mit Javascript FileReader()

<!DOCTYPE html> 
<html> 
    <head> 
    <title>reading file</title> 
    <script type="text/javascript"> 

     var reader = new FileReader(); 

     function readText(that){ 

      if(that.files && that.files[0]){ 
       var reader = new FileReader(); 
       reader.onload = function (e) { 
        var output=e.target.result; 

        //process text to show only lines with "@":    
        output=output.split("\n").filter(/./.test, /\@/).join("\n"); 

        document.getElementById('main').innerHTML= output; 
       };//end onload() 
       reader.readAsText(that.files[0]); 
      }//end if html5 filelist support 
     } 
</script> 
</head> 
    <body> 
    <input type="file" onchange='readText(this)' /> 
    <div id="main"></div> 
    </body> 

Warum es nicht funktioniert, wenn ich den Code aus ändern:

<body> 
    <input type="file" onchange='readText(this)' /> 
    <div id="main"></div> 
</body> 

zu:

<body onload="readText('file:///C:/test.txt')"> 
    <div id="main"></div> 
</body> 
+2

Sie können nicht lokale Dateien wie das lesen, hat der Benutzer einen Dateiauswahldialog zu verwenden oder eine Datei per Drag tun und für den Browser, um fallen Sie auf lokale Dateien geben zugreifen, sonst wäre es ein großes Sicherheitsproblem sein –

Antwort