2014-10-03 188 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

回答