2013-07-09 97 views
1

我在我的數據庫中保存了一個數組列表。但是,當我救它,發生的情況是這樣的:在Android中的數據庫中保存時刪除括號

enter image description here

我想從最後一列的數據中的括號去掉,我想我的數據庫是這樣一個:

enter image description here

這裏是我的代碼:

ArrayList<String> content = new ArrayList<String>(); 
    for (int j=0; j<checkSelected.length; j++) { 
     if(checkSelected[j]==true) { 
      String values = BrandListAdapter.mListItems.get(j); 
      Cursor rSubBrand = databaseHandler.getReport_SubBrandCode(values); 
      String SubBrandCode = rSubBrand.getString(rSubBrand.getColumnIndex(Constants.SUBBRAND_CODE)); 
      content.clear(); 
      content.add(SubBrandCode); 

      String subBrand = content.toString(); 

      databaseHandler.SaveSubBrand(new Cons_iReport (ReportCode, subBrand)); 
    }      
} 
+0

您可以解析此代碼中的字符串並刪除括號 – Randy

+0

您可以做一個subBrand.replaceAll(「[」,「」)和subBrand.replaceAll(「]」,「」) – AlvinArulselvan

+1

Hi @AlvinArulselvan,我試過你的代碼,但有一個錯誤:'java.util.regex.PatternSyntaxException:在索引1附近的字符類中缺少右括號' – androidBoomer

回答

1

我剛弄明白。我無法刪除括號的原因是因爲我沒有將它分配給將被保存到數據庫的'subBrand'。

ArrayList<String> content = new ArrayList<String>(); 
    for (int j=0; j<checkSelected.length; j++) { 
     if(checkSelected[j]==true) { 
      String values = BrandListAdapter.mListItems.get(j); 
      Cursor rSubBrand = databaseHandler.getReport_SubBrandCode(values); 
      String SubBrandCode = rSubBrand.getString(rSubBrand.getColumnIndex(Constants.SUBBRAND_CODE)); 
      content.clear(); 
      content.add(SubBrandCode); 

      String subBrand = content.toString(); 
      subBrand = subBrand.replace("[", ""); // this is what I mean... 
      subBrand = subBrand.replace("]", ""); 

      databaseHandler.SaveSubBrand(new Cons_iReport (ReportCode, subBrand)); 
     }      
    } 
+1

很好,你解決了它。 – AlvinArulselvan

+1

沒錯!謝謝你們。:) – androidBoomer

0

可以使用的replaceAll功能:

subBrand = subBrand.replaceAll("\\[|\\]", "");

替換字符串中找到的所有括號內。