最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

How to get the contents of a *user-selected* *local* file in javascript without any posts, gets, submits, etc - Stack Overflow

programmeradmin12浏览0评论

I'm using jQuery if that's any benefit; and I would like to have:

  1. The user selects a file on the local filesystem

  2. my javascript gets the contents of said file without going "across the wire".

  3. I am checking the browser type and am prepared to use pletely different code for each browser. IE and FF are the two that I am currently writing for.

  4. I am Not using php, just straight javascript on a form.

  5. I do not want any gets, posts, submits, ajax, or any other network activity until the contents of the file have been acquired, validated, and manipulated (all of which my script will do; this question is just for getting the guts of the file).

  6. I do not necessarily need to get the path. I don't particularly want to get the path. The generally accepted notion of "secure" having the user pick the file and my script just gets the contents. That's fine, but if I get the path I won't plain.

I've googled this a lot and haven't gotten any solution that simply works.


I've looked at Mozilla XPCOM, but the file picker nsIFilePicker requires privilege escalation, which I just don't want to deal with.


I've tried using a regular

<input type="file" onclick="fileCheck(this); return false" . . . />

with

function fileCheck ()
{
  var path = obj.files[0].mozFullPath;
}

But even though you can see mozFullPath in Firebug, it does not show up for Javascript (ostensibly for security reasons).

Any ideas?

I'm using jQuery if that's any benefit; and I would like to have:

  1. The user selects a file on the local filesystem

  2. my javascript gets the contents of said file without going "across the wire".

  3. I am checking the browser type and am prepared to use pletely different code for each browser. IE and FF are the two that I am currently writing for.

  4. I am Not using php, just straight javascript on a form.

  5. I do not want any gets, posts, submits, ajax, or any other network activity until the contents of the file have been acquired, validated, and manipulated (all of which my script will do; this question is just for getting the guts of the file).

  6. I do not necessarily need to get the path. I don't particularly want to get the path. The generally accepted notion of "secure" having the user pick the file and my script just gets the contents. That's fine, but if I get the path I won't plain.

I've googled this a lot and haven't gotten any solution that simply works.


I've looked at Mozilla XPCOM, but the file picker nsIFilePicker requires privilege escalation, which I just don't want to deal with.


I've tried using a regular

<input type="file" onclick="fileCheck(this); return false" . . . />

with

function fileCheck ()
{
  var path = obj.files[0].mozFullPath;
}

But even though you can see mozFullPath in Firebug, it does not show up for Javascript (ostensibly for security reasons).

Any ideas?

Share Improve this question asked Jan 3, 2012 at 17:05 kovacsbvkovacsbv 3514 silver badges11 bronze badges 1
  • I found it interesting you can get a preview/data merely by selecting a png. Not sure if this is of relevence, but it is interesting: blueimp.github./jQuery-File-Upload – NibblyPig Commented Jan 3, 2012 at 17:47
Add a ment  | 

2 Answers 2

Reset to default 9

You can; have a look at HTML5 Rocks - Reading local files in JavaScript.

You can't, for blindingly obvious security reasons.

与本文相关的文章

发布评论

评论列表(0)

  1. 暂无评论