admin管理员组

文章数量:1287918

Hi all i just want to know if we can read a file using javascript like

what we do

fp=("r","path")

like that is it possible?

Hi all i just want to know if we can read a file using javascript like

what we do

fp=("r","path")

like that is it possible?

Share Improve this question asked Feb 17, 2011 at 12:31 HarishHarish 2,3244 gold badges24 silver badges28 bronze badges 3
  • 1 File from server or from client? – Shadow Wizzard Commented Feb 17, 2011 at 12:32
  • It depends on execution environment (there are even ones with this ugly syntax, Opera's Unite runtime) – Free Consulting Commented Feb 17, 2011 at 12:34
  • possible duplicate of Read txt file using Javascript – NG. Commented Feb 17, 2011 at 12:36
Add a ment  | 

6 Answers 6

Reset to default 5

No, that's not possible in a browser. Javascript runs in a sandboxed environment and doesn't have access to the file system. You might need to special plugins to be installed on the client browser in order to access his file system.

Yes, this is possible, even in some browsers.

Reading a local file, from a browser

If the browser supports the new File API, you can read any file the user gives you permission to read via an input[type=file] element. Specification | Example here on StackOverflow

Read a server file, from a browser

This can be done on all major browsers using "ajax", more specifically the XMLHttpRequest object. It's made a lot easier by libraries like jQuery, Prototype, YUI, Closure, or any of several others.

On a server, workstation, etc. (not in a browser)

You'll need an environment that provides file reading, such as NodeJS.

Firstly I think its not a good idea to read a file locally with JavaScript. I remend first upload it to the server and then perform the reading.

Having said that it is possible, but you restricted by what you can do.

Im assuming its a local file on the user machine, otherwise AJAX would achieve this for a server read.

It might be possible through

  1. Windows Script Host Object Model(WScript.Shell) and when granted Prompt or Enable access to ActiveX the browser has elevated privileges (Enable through Tools > Internet Options > Security > Custom Level ... > Set Active X settings to prompt). If this is still to difficult, user could download something thats installed and then does the reading through Shell Scripting! Disclaimer: Note I do not remend this approach. Its not active for a reason and its so DIRTY (I feel dirty)!

  2. Cookies might also be worth considering. If you can store the information in a cookie the JavaScript would be able to read, write and update it.

    Found this code from http://www.quirksmode/js/cookies.html scroll right to the bottom for the example.

    function createCookie(name,value,days) {
    if (days) {
        var date = new Date();
        date.setTime(date.getTime()+(days*24*60*60*1000));
        var expires = "; expires="+date.toGMTString();
    }
    else var expires = "";
    document.cookie = name+"="+value+expires+"; path=/";
    

    }

    function readCookie(name) {
        var nameEQ = name + "=";
        var ca = document.cookie.split(';');
        for(var i=0;i < ca.length;i++) {
            var c = ca[i];
            while (c.charAt(0)==' ') c = c.substring(1,c.length);
            if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
        }
        return null;
    }
    
    function eraseCookie(name) {
        createCookie(name,"",-1);
    }
    

Reading from client: how to read a text file using Javascript

Reading from server: jquery - Read a text file?

Reading client files in javascript is possible with the new File API available in modern browsers. Check this site and its code: http://www.readfileonline./

You can but then you have to use AJAX, which is Javascript for server side jobs.

本文标签: is it possible to read a file using javascriptStack Overflow