我正在编写一个Google Chrome应用,可以使用HTML5 FileSystem API在本地存储内容.有没有办法使用Windows资源管理器访问Chrome存储这些文件的目录,还是完全虚拟且无法从应用程序外部访问?我无法通过四处寻找目录,也没有在网上看到任何参考资料.
我想我可以在应用程序中编写一些内容,以便对我的应用程序存储的文件进行GUI管理,或者只使用开发人员控制台,但使用WE确实可以节省时间.
我想检测(使用javascript/jQuery)用户的浏览器是否支持标签multiple属性input type='file'.HTML5的一项功能,可添加多个图像.
<input type=file name="images" value=" " multiple=""/>
Run Code Online (Sandbox Code Playgroud)
请建议我怎么做这个.
如果我使用 JavaScript 在 HTML5 文件系统上创建文件,我可以在计算机的真实文件系统上找到它吗?
一旦用户选择了文件,我就有条件使用html5文件api检查文件大小是否超过1mb.
function handleLimit(evt) {
var files = evt.target.files;
f = files[0];
console.log(f.size);
if (f.size > 1048576) {
/*JS for clearing form*/
}
}
Run Code Online (Sandbox Code Playgroud)
当处理程序知道文件超过一定大小时,我想在我的输入标签上运行以清除/强制客户端选择另一个文件的脚本是什么?
我尝试使用cordova 3.4.0 GetFile:
FileManager.prototype.ReadAsTextFromFile = function (fileName, readDataCallBack) {
var that = this;
try {
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, function (fileSystem) {
fileSystem.root.getFile(fileName, {create: false},
function (fileEntry) {
fileEntry.file(
function (file){
var reader = new FileReader();
reader.onloadend = readDataCallBack;
reader.readAsText(file);
}
, function(err){alert('ReadFile' + " fail: " + err.code);});
}
, function(err){alert('GetFile' + " fail: " + err.code);});
}, function(err){alert('FileSystem' + " fail: " + err.code);});
} catch (e) {
logError(e);
}
}
Run Code Online (Sandbox Code Playgroud)
但是在调用getfile上获取err.code 1000.
文件名是:
var fileName = "/scard/" + reliefsSubfolderName …Run Code Online (Sandbox Code Playgroud) 我正在寻找一个 API,它可以让我一次读取通过(或允许从浏览器访问用户文件的任何其他方法)块提供的文件。我正在读取大文件,所以我不想将整个文件加载到内存中。
我的用例是,我正在使用用 emcc 编译的 ffmpeg 库,但我不想用它来处理多媒体文件。我可以实现自己的 AVIOContext,但要做到这一点,我需要相当于 C 函数 fread 和 fseek。
我正在查看具有 WORKERFS 文件系统类型的 FS API,但我不清楚是否可以使用 DOM 中的文件对象从工作线程挂载它。
有没有办法在内容脚本中访问Fire Fox插件sdk中的Html5文件api?
这是为了存储用户添加的单词及其含义所必需的.数据可能会变大,因此本地存储不是一种选择.
window.requestFileSystem3 = window.requestFileSystem || window.webkitRequestFileSystem;
Run Code Online (Sandbox Code Playgroud)
给我错误TypeError:window.requestFileSystem3不是一个函数.
我问这个是因为我从Google Chrome扩展程序移植此代码,允许在内容脚本中访问文件api.
其他问题
1)如果不允许HTML5文件API,那么我应该使用文件模块吗?
2)文件模块是否允许访问文件系统上的任何文件,而不是只访问沙盒访问文件系统的Html5文件api?
3)假设我必须使用文件模块什么是存储我的文件的最佳位置(如用户配置文件目录或扩展目录)以及如何在代码中获得此路径.
我为这个问题中的许多子问题道歉.谷歌对这个话题并不是很有帮助.
任何示例代码都非常有用.
我正在尝试创建一个能够访问大量文件的 HTML5 应用程序。因此,我查看了 FileSystem API 以便能够从本地文件系统读取文件。
我使用 phonegap File API 做了一个 PoC,一切都按预期工作,我能够在 Chrome 桌面上使用 FileSystem API 产生类似的结果......
但是我面临一个严重的问题,虽然我可以在桌面访问我的文件系统,但我无法从 Android Chrome 访问 sdcard。我尝试使用这个演示:
http://html5-demos.appspot.com/static/filesystem/filer.js/demos/index.html
我可以在桌面上从本地系统中选择文件:我的图片等......但我不能用 Android Chrome 做同样的事情
如何在 Android Chrome 中访问设备文件系统 /sdcard?
我试图在chrome 31中使用HTML5文件系统API.不幸的是,我在用户授予对文件系统配额的访问权限后收到错误.
这是错误:
Error DOMError {message: "The implementation did not support the requested type of object or operation.", name: "NotSupportedError"}
Run Code Online (Sandbox Code Playgroud)
我正在使用的代码:
<!DOCTYPE html>
<html>
<head>
<title> JavaScript File System </title>
<script>
window.requestFileSystem = window.requestFileSystem || window.webkitRequestFileSystem;
navigator.webkitPersistentStorage.requestQuota(1024*1024, function(grantedBytes) {
window.requestFileSystem(PERSISTENT, grantedBytes, onInitFs, errorHandler);
}, function(e) {
console.log('Error', e);
});
function onInitFS(fs){
alert("Welcome to Filesystem! It's showtime :)"); // Just to check if everything is OK :)
// place the functions you will learn bellow here
}
function errorHandler(e) {
var …Run Code Online (Sandbox Code Playgroud) 我正在构建一个库来“节点化” HTML5 文件 Api(目前处于 alpha 阶段)[0],以使其处理二进制内容并且没有字符集问题,我正在使用 Buffer[1] 实用程序。
但是 HTML5 文件 API 使用 Blob 原生对象。实际上,我正在使用缓冲区编码中的“应用程序/八位字节流”类型和“二进制”类型。但是,我想使用 base64 以防止出现任何问题:
CoFS.prototype.writeFile = function (fileName, data, encoding, callback) {
var self = this;
if (Buffer.isBuffer(data)) {
callback = encoding;
encoding = undefined;
} else {
data = new Buffer(data, encoding);
}
this._ifready(function () {
self.getFileEntry(fileName, {create: true, exclusive: true}, function (err, fileEntry) {
if (err) return callback(new Error("Error getting file access " + err.message));
fileEntry.createWriter(function(fileWriter) {
fileWriter.onwriteend = function () {
callback(null);
};
fileWriter.onerror …Run Code Online (Sandbox Code Playgroud) html5-filesystem ×10
html ×4
html5 ×4
javascript ×4
android ×2
filesystems ×2
blob ×1
cordova ×1
emscripten ×1
file-io ×1
jquery ×1
webassembly ×1