Phonegap -Как сгенерировать файл изображения из строки base64?

Я пишу приложение для телефонной связи для Android, и в какой-то момент я сохраняю строку base64 PNG в виде файла. Однако я заметил, что строка просто сбрасывается в файл и не может быть просмотрена как изображение при открытии.

Я хотел бы сохранить изображение, сгенерированное из строки base64. Вот что у меня есть:

Javascript (, созданный для Phonegap):

/*** Saving The Pic ***/
var dataURL = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg=="; //A simple red dot

function gotFS(fileSystem) {
    fileSystem.root.getFile("dot.png", {create: true, exclusive: false}, gotFileEntry, fail);
}

function gotFileEntry(fileEntry) {  
    fileEntry.createWriter(gotFileWriter, fail);
}

function gotFileWriter(writer) {
    writer.write(dataURL); //does not open as image
}

function fail(error) {
    console.log(error.code);
}

Я попытался отредактировать код, чтобы сохранить только данные изображения, но это тоже не сработало. (См. ниже)

function gotFileWriter(writer) {
     var justTheData = dataURL.replace(/^data:image\/(png|jpg);base64,/, "");//Removes everything up to...'base64,'
     writer.write(justTheData); //also does not show
 }

HTML, который все запускает:

<p onclick="window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, gotFS, fail)">Save a Dot</p>

Пожалуйста помоги. Спасибо.

6
задан mukama 5 July 2012 в 15:04
поделиться