2011-07-16 73 views
0

無法寫入數據我跟着tutorial學習一些關於HTML5的
文件API,但是,當我遇到這些代碼
使用HTML5文件API

 
fs.root.getFile('log',{create:true},function(fileEntry){ 
    fileEntry.createWriter(function(fileWriter){ 

    fileWriter.onwriteend=function(e){ 
     alert("end") 

    } 
    fileWriter.onerror=function(e){ 
     alert("error") 
    } 

    var bb=new window.WebKitBlobBuilder() 
    bb.append('hello') 

    fileWriter.write(bb.getBlob('text/plain')) 
    },errorHandler) 

},errorHandler) 

我總是遇到「錯誤」 和而我在錯誤事件中設置了alert(e.toString()),它似乎是[object ProgressEvent]
我的瀏覽器是鉻13,
有人有一些想法嗎?非常感謝

回答

0

你有一個額外的'})'後警告('結束')。請發佈完整的測試用例(例如http://jsfiddle.net/),這樣可以更容易地幫助您。

您是否嘗試記錄(順便提醒()是舊的,請使用console.log())錯誤事件的屬性列表?它可能有e.code?雖然我不認爲它是一個ProgressEvent。

+0

我試過'e.code',但它似乎是'undefined' – Lanston

0

我在某處讀到它只支持chrome13 +。請檢查它

0

您的文件編寫器可能由於多種原因失敗。下面的代碼可能會幫助您確定哪一個:

fileWriter.onerror = function (event) { 
    switch (event.target.error.code) { 
    case FileError.NOT_FOUND_ERR: 
    console.error('NOT_FOUND_ERR'); 
    break; 
    case FileError.SECURITY_ERR: 
    console.error('SECURITY_ERR'); 
    break; 
    case FileError.ABORT_ERR: 
    console.error('ABORT_ERR'); 
    break; 
    case FileError.NOT_READABLE_ERR: 
    console.error('NOT_READABLE_ERR'); 
    break; 
    case FileError.ENCODING_ERR: 
    console.error('ENCODING_ERR'); 
    break; 
    case FileError.NO_MODIFICATION_ALLOWED_ERR: 
    console.error('NO_MODIFICATION_ALLOWED_ERR'); 
    break; 
    case FileError.INVALID_STATE_ERR: 
    console.error('INVALID_STATE_ERR'); 
    break; 
    case FileError.SYNTAX_ERR: 
    console.error('SYNTAX_ERR'); 
    break; 
    case FileError.INVALID_MODIFICATION_ERR: 
    console.error('INVALID_MODIFICATION_ERR'); 
    break; 
    case FileError.QUOTA_EXCEEDED_ERR: 
    console.error('QUOTA_EXCEEDED_ERR'); 
    break; 
    case FileError.TYPE_MISMATCH_ERR: 
    console.error('TYPE_MISMATCH_ERR'); 
    break; 
    case FileError.PATH_EXISTS_ERR: 
    console.error('PATH_EXISTS_ERR'); 
    break; 
    default: 
    console.error('Unknown Error: ' + event.target.error.code); 
    break; 
    } 
}; 
相關問題