如何使用文件路径 HTML5 创建/初始化文件对象
how to create/initialize the file object using file path html5
有很多
使用html5读取本地文件的例子,但是通过从文件列表中选择,我的问题是我想手动创建文件对象,想想我有一个带有链接的文件
file:///G:/Users/txt.txt
我希望浏览器打开它,
我认为它必须提交f=new File('file:///G:/Users/txt.txt');
我的问题是如何使用文件路径创建/初始化文件对象?!
自从文件继承 blob 接口以来,我使用了以下解决方法。
var getFileBlob = function (url, cb) {
var xhr = new XMLHttpRequest();
xhr.open("GET", url);
xhr.responseType = "blob";
xhr.addEventListener('load', function() {
cb(xhr.response);
});
xhr.send();
};
var blobToFile = function (blob, name) {
blob.lastModifiedDate = new Date();
blob.name = name;
return blob;
};
var getFileObject = function(filePathOrUrl, cb) {
getFileBlob(filePathOrUrl, function (blob) {
cb(blobToFile(blob, 'test.jpg'));
});
};
getFileObject('img/test.jpg', function (fileObject) {
console.log(fileObject);
});
没有用户的许可,确实无法创建文件。需要按下按钮或其他东西。您需要创建一个 data:uri 才能保存它。您可以使用网络搜索或签出 http://en.wikipedia.org/wiki/Data_URI_scheme(不是完整的来源,但可以显示可能的内容)找到更多信息。这取决于手机和操作系统,这是非常有限的,在使用IE时,数据URI是有限的。
当它被触发下载时,它会保存到默认位置或用户指定的位置。您可能还想查看供应商/操作系统特定的 API 调用,这些调用可以按照您的描述执行。但可能需要在实际允许访问之前验证权限。
相关文章:
- Rails应用程序中的每个javascript文件都需要.on('page:change',初始化)吗?
- 使用 gruntjs 自定义初始化任务重命名模板文件夹
- 选择要初始化精细上传器的文件输入
- AngularJs在初始化之前加载所有文件
- 从其他文件初始化微小的Mce
- swf 文件可以使用 'ExternalInterface.call()' 函数为 javascript 初始化自身
- 如何从javaScript文件中删除脚本初始化
- 如何在 JavaScript 文件中初始化 HTML 文件中的函数?(浏览器应用)
- 如何在视图中呈现部分 js 或访问在应用程序/资产中的 js.erb 文件中的控制器操作中初始化的实例变量/方法
- 如何为Firefox插件初始化SQLite文件
- 如何重新初始化jQuery文件上传数据数组
- 如何初始化angularjs'在multiply js文件中的s$rootScope
- 如何初始化从外部服务器下载的文件
- 如何移动TinyMCE javascript初始化设置到单独的文件
- 查看文件更改时出错:EMFILE"初始化react-native项目时
- Backbone.js初始化多个router.js文件
- 我有一个初始化Jquery文件上传插件的问题
- 如何从嵌入的外部svg文件初始化d3 svg元素并操纵它
- 在Express应用初始化期间加载JSON文件
- 使用XML文件初始化javascript程序