我想使用html5和javascript或jquery从chrome(所有版本)写入任何文件的txt.
我尝试过FileSystem API,我试过的代码是:
function onFs(fs) {
console.log('test');
fs.root.getFile('log.txt', {create: true, exclusive: true},
function(fileEntry) {
// fileEntry.isFile === true
// fileEntry.name == 'log.txt'
// fileEntry.fullPath == '/log.txt'
fileEntry.getMetaData(function(md) {
console.log(md.modificationTime.toDateString());
}, onError);
},
onError
);
}
window.webkitRequestFileSystem(TEMPORARY, 1024*1024 /*1MB*/, onFs);
但不行.
有没有办法写入文件?
我正在使用 mocha、chai、karma 以及 PhantomJS 和相关插件。我们如何创建客户端 File 对象并将其传递给 FileReader API ?我必须上传一个测试 jpeg 文件,创建一个文件对象并将其传递给 FileReader api 才能继续测试。
使用我的chrome扩展程序我想在上传到网站之前抓取一个文件(也许可以更改它).特别是来自文件输入.换句话说,如果我选择一个带有输入[type = file]的文件,我希望我的chrome扩展程序能够中断任何提交并获取文件.然后我的扩展程序将其魔法应用于文件,之后可以提交/上传文件.我怎么能接近这个?
文件路径出现问题.如果我抓住文件输入的vaule,由于HTML5标准和兼容性问题,它总是将实际路径更改为"C:\ fakepath \".我怎么才能访问该文件呢?也许它暂时保存在一些镀铬存储器中?
编辑:嗯,我设法读取文件输入中选择的文件,如下所示:
var file;
$('input[type=file]').change(function(e){
file = e.target.files[0];
var reader = new FileReader();
reader.onload = function (event) {
console.log(event.target.result); //contains the file data
//maybe change data and use filewriter
};
reader.readAsDataURL(file);
};
Run Code Online (Sandbox Code Playgroud)
现在我想使用FileWriter写入e.target.files [0]
我按照本教程:http: //www.html5rocks.com/en/tutorials/file/filesystem/ 但我无法创建正确的FileWriter.
没有必要写入磁盘上的原始文件 - 可能甚至不可能 - 但我需要在相应的文件输入表单字段中更改用于上载的数据.