翻过高山走不出你
这是任何人都可以使用的文件下载代码。你只需要三个参数来使用它 -1)URL2)要在Sdcard中创建的文件夹名称3)文件名(您可以为文件指定任何名称)所有类型的文件都可以使用此代码下载。你可以使用它作为.js这IOS也适用。//First step check parameters mismatch and checking network connection if available call download functionfunction DownloadFile(URL, Folder_Name, File_Name) {//Parameters mismatch checkif (URL == null && Folder_Name == null && File_Name == null) {
return;}else {
//checking Internet connection availablity
var networkState = navigator.connection.type;
if (networkState == Connection.NONE) {
return;
} else {
download(URL, Folder_Name, File_Name); //If available download function call
}
}}//获取写入权限和文件夹创建的第二步function download(URL, Folder_Name, File_Name) {//step to request a file system
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, fileSystemSuccess, fileSystemFail);function fileSystemSuccess(fileSystem) {
var download_link = encodeURI(URL);
ext = download_link.substr(download_link.lastIndexOf('.') + 1); //Get extension of URL
var directoryEntry = fileSystem.root; // to get root path of directory
directoryEntry.getDirectory(Folder_Name, { create: true, exclusive: false }, onDirectorySuccess, onDirectoryFail); // creating folder in sdcard
var rootdir = fileSystem.root;
var fp = rootdir.fullPath; // Returns Fulpath of local directory
fp = fp + "/" + Folder_Name + "/" + File_Name + "." + ext; // fullpath and name of the file which we want to give
// download function call
filetransfer(download_link, fp);}function onDirectorySuccess(parent) {
// Directory created successfuly}function onDirectoryFail(error) {
//Error while creating directory
alert("Unable to create new directory: " + error.code);}
function fileSystemFail(evt) {
//Unable to access file system
alert(evt.target.error.code);
}}//将文件下载到创建文件夹的第三步function filetransfer(download_link, fp) {var fileTransfer = new FileTransfer();// File download function with URL and local pathfileTransfer.download(download_link, fp,
function (entry) {
alert("download complete: " + entry.fullPath);
},
function (error) {
//Download abort errors or download failed errors
alert("download error source " + error.source);
//alert("download error target " + error.target);
//alert("upload error code" + error.code);
}
);}