html5可以獲取瀏覽器本地文件,但是爲了安全起見,需要本地用戶的確定,纔可以打開,而不能通過js去自動打開,另外,不允許獲取文件的絕對路徑。
1. 獲取文件名字:
function showFileName()
{
// Check for the various File API support.
if (window.File && window.FileReader && window.FileList && window.Blob) {
// All the File APIs are supported.
} else {
alert('The File APIs are not fully supported in this browser.');
}
//get the file name
var a=document.getElementById("filePicker").value;
a=a.split("\\");
var filename = a[a.length-1];
}
<a href="javascript:;" class="file">
<span style="white-space:pre"> </span><input οnchange="javascript:showFileName()" type="file" name="file" id="filePicker" multiple />
</a>
2. 獲取文件內容:
function showFile()
{
// Check for the various File API support.
if (window.File && window.FileReader && window.FileList && window.Blob) {
// All the File APIs are supported.
} else {
alert('The File APIs are not fully supported in this browser.');
}
<span style="white-space:pre"> </span>var reader = new FileReader();
<span style="white-space:pre"> </span>reader.onload = function()
<span style="white-space:pre"> </span>{
<span style="white-space:pre"> </span>//alert(this.result);
<span style="white-space:pre"> </span>document.getElementById("div1").innerHTML = this.result;
<span style="white-space:pre"> </span>}
<span style="white-space:pre"> </span>var f = document.getElementById("filePicker").files[0];
<span style="white-space:pre"> </span>reader.readAsText(f);
}
<a href="javascript:;" class="file">
<input type="file" name="file" id="filePicker" multiple />
</a>
<input type="button" value = "顯示" οnclick="showFile()"/>
<div id = "div1">
</div>