2014-03-03 72 views
0

一類FileHandling其中有一個名爲readAllLayouts將讀取指定的文件夾中的所有文件和內容JSONArray返回工作燈適配器的一種方法。返回JSON從Java到工作燈適配器

調用工作燈過程時,我有這種類型的錯誤:

{ 
    "errors": [ 
     "Evaluator: Java class \"org.json.simple.JSONArray\" has no public instance field or method named \"isSuccessful\"." 
    ], 
    "info": [ 
    ], 
    "isSuccessful": false, 
    "warnings": [ 
    ] 
} 

,這是我的Java方法的代碼:

public static JSONArray readAllLayoutFiles (){ 

    File layoutDir = new File(LAYOUT_PARENT_DIR); 

    String allFiles[] = layoutDir.list(); 
    System.out.println("All Files Length : " + allFiles.length); 
    JSONObject obj = null;//new JSONObject[ allFiles.length ]; 

    JSONArray retArr = new JSONArray(); 

    for (String f : allFiles){ 
     obj= new JSONObject(); 
     obj.put("layoutname", f.replaceAll (".txt", "")); 
     obj.put("layouthtml", readLayoutFile (f)); 
     retArr.add(obj); 
    } 
    obj= new JSONObject(); 
    obj.put("isSuccessful", true); 
    retArr.add(obj); 

    System.out.println(retArr.toString()); 
    return retArr; 
} 

任何幫助,將不勝感激。

回答

0

因爲這個問題我已經改變了我的代碼,將工作,但現在卻沒有返回JSON,但返回一個包含JSON字符串。

下面是代碼和做工精細:

public static String readAllLayoutFiles (){ 

    File layoutDir = new File(LAYOUT_PARENT_DIR); 

    String allFiles[] = layoutDir.list(); 
    System.out.println("All Files Length : " + allFiles.length); 
    JSONObject obj = null;//new JSONObject[ allFiles.length ]; 

    JSONArray retArr = new JSONArray(); 

    for (String f : allFiles){ 
     obj= new JSONObject(); 
     obj.put("layoutname", f.replaceAll (".txt", "")); 
     obj.put("layouthtml", readLayoutFile (f)); 
     retArr.add(obj); 
    } 
    obj= new JSONObject(); 
    obj.put("isSuccessful", true); 
    retArr.add(obj); 

    System.out.println(retArr.toJSONString()); 
    return retArr.toJSONString(); 
} 
0

爲什麼「isSuccessful」輸出假,而其設置爲true,在你的代碼?

+0

我不知道。 –