2014-10-03 118 views
0

我正在閱讀包含一些json代碼,我想創建一個對象的文件。 讀取此文件會給出錯誤「JSON錯誤」(請參閱​​下面的事件數據)。我不明白爲什麼。閱讀json文件與readAsText「JSON錯誤」

我閱讀代碼:

PageClass.createFromFile = function (dirEntry,pages) { 
    "use strict"; 

    console.log("trying to create page for folder " + dirEntry.name); 
    dirEntry.getFile("page.properties", {create: false}, function (fileEntry) { 
     var reader = new FileReader(); 
     reader.onload = function (evt) { 
      console.log("Read as text done for "+fileEntry.fullPath); 
      console.log(evt); 
      var json = evt.target.result; 
      console.log(json); 
      var page = PageClass.createFromJSON(json); 
      page.root = dirEntry.name; 
      console.log("Read page is "+page.number); 
      pages.push(page); 
     }; 
     reader.onerror = function (evt) { 
      console.log("Read as text **failed** for "+fileEntry.fullPath); 
      console.log(evt); 
     }; 
     reader.readAsText(fileEntry); 
    }, function (evt) { 
     console.warn("page.properties non trouvé pour " + dirEntry.fullPath); 
     if (evt.code !== FileError.NOT_FOUND_ERR) { 
      fail(evt); 
     } 
    } 
    ); 

}; 

文件內容: {"preferred_image":"","source_image":"","title":"","bookmark":"","number":"002-003","commons":"","status":"0"}

而且progressEvent從使用onerror:

ProgressEvent 
    bubbles: false 
    cancelBubble: false 
    cancelable: false 
    lengthComputable: false 
    loaded: 0 
    target: Object 
     _error: FileError 
      code: "JSON error" 
      __proto__: — 
     _fileName: "file:///storage/emulated/0/Android/data/com.intel.html5tools.apppreview/cache/00001/page.properties" 
     _readyState: 2 
     _realReader: FileReader 
     _result: null 
     __proto__: — 
    total: 0 
    type: "error" 
    __proto__ 

任何想法?

+0

只是可以肯定的。我檢查了編碼。它是UTF-8。 – lvr123 2014-10-05 14:18:59

回答