2

Phonegapファイルアップロードを使用してSVGファイルをサーバーにアップロードしています。正常に動作しています。ただし、iPadの絶対パスからすべてのSVGファイルを取得して、サーバーに送信する必要があります。PhonegapのファイルAPIを使用してすべての.svgファイルを取得する方法がわかりません。これにより、ファイル名をループしてサーバーに送信できます。これを行う方法を教えてください。

ファイルアップロードの私のコードは次のとおりです。

document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
  window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, gotFS, fail);
}
function gotFS(fileSystem) {
  fileSystem.root.getFile("image5_2.jpg.svg", {create: true, exclusive: false}, gotFileEntry, fail);
}
function gotFileEntry(fileEntry) {
  var localpath=fileEntry.fullPath;
  uploadPhoto(localpath);
}
function uploadPhoto(imageURI) {
  var options = new FileUploadOptions();
  var ft = new FileTransfer();
  ft.upload(imageURI, "http://192.168.1.54:8080/POC/fileUploader", win, fail, options);
}
4

1 に答える 1

7

ルート FileSystem からDirectoryReaderを作成し、すべてのエントリをループして .svg ファイルを探す必要があります。

function gotFS(fileSystem) {
    var reader = fileSystem.root.createReader();
    reader.readEntries(gotList, fail);    
}

function gotList(entries) {
    var i;
    for (i=0; i<entries.length; i++) {
        if (entries[i].name.indexOf(".svg") != -1) {
            uploadPhoto(entries[i].fullPath);
        }
    }
}

このコードを少し編集する必要があるかもしれませんが、これで作業を開始できます。

于 2012-06-16T16:38:08.243 に答える