2014-12-25 1 views
0

내 응용 프로그램에서 통합 문서를 만들고 있습니다. sqlite에서 데이터의 Arraylist를 얻은 다음 ListAdapter를 사용하여 데이터를 봅니다. 나는 그 서류를 잘 보관할 수있다. 행은 데이터를 표시하지만 Personfirstname = John 및 Personlastname = Doe와 같은 쿼리의 원시 데이터는 한 셀에 모두 표시됩니다. 그건 내가 원하는 것이 아니다. 내가 원하는 건 셀 1의 John, 셀 2의 Doe, 셀 2의 Row 2에있는 Jane, 그리고 행 2의 셀 2에있는 Doe입니다. ListAdapter로 무엇인가를해야한다는 것을 알고 있습니다. 해야 할 것. 여기 ListAdapter의 값을 통합 문서 셀에 가져 오는 방법

귀하의 문제가이 함께있는 ...

ArrayList<HashMap<String, String>> test = controller .getAllpersons(value1,value2); 

ListAdapter adapter1 = new SimpleAdapter(Persons.this, test, R.layout.rowsales, 
new String[] { "NamesId", "personfirstname","personlastname }, 
new int[] {R.id.NamesId, R.id.personfirstname,R.id.personlastname}); 


for (int i = 0; i < test.size(); i++) { 

Row row2 = sheet1.createRow((short) i+3); 
c = row2.createCell(0); 
System.out.println(test.get(i)); 
c.setCellValue(test.get(i).toString()); 
c.setCellStyle(s); 
} 
+0

경우'ListAdapter'와'에서 오는 SimpleAdapter'합니까? 그리고 firstname과 lastname을 해시에 어떻게 저장하고 있습니까? – Gagravarr

+0

그들은 내 ListView입니다. 그건 잘 작동합니다. 내 통합 문서의 셀에 ListView에있는 항목을 가져 오려고합니다. 내 코드가 올바른 정보를 얻습니다. 문제는 필자가 "john"을 원할 때 personfirstname = "john"과 같은 열 이름을 출력한다는 것입니다. – SmulianJulian

답변

1

귀하의 문제는 POI 코드 (대부분)와 실제로 아니다 (나는 apache.poi 항아리를 사용하고 있습니다) 내 코드입니다 두 줄 :

ArrayList<HashMap<String, String>> test = controller .getAllpersons(value1,value2); 

c.setCellValue(test.get(i).toString()); 

변수 test은 해시지도의 목록입니다. 지도는 키를 기준으로 색인이 생성되며 원하는 항목이 값에 포함됩니다. 그러나, 당신은 그때지도 검색을 무시하고, 전체 펫을 가져 와서 문자열로 변합니다.

당신이 SimpleAdapter에 전달하는 String[]지도의 열쇠라고 가정하면, 다음 당신이해야 할 것입니다 :

Workbook wb = new HSSFWorkbook(); 
Sheet s1 = wb.createSheet(); 
for (int i=0; i<test.size(); i++) { 
    String firstname = 
    Row r = s1.createRow(i); 

    Map<String,String> personData = test.get(i); 

    Cell fn = r.createCreateCell(0, Cell.CELL_TYPE_STRING); 
    fn.setCellValue(data.get("personfirstname")); 

    Cell ln = r.createCreateCell(1, Cell.CELL_TYPE_STRING); 
    ln.setCellValue(data.get("personlastname")); 
} 
+0

Map to HashMap 및 firstname String과 같은 몇 가지 변경 사항을 불필요하게했지만 귀하의 대답은 매우 유용하고 옳았습니다. 고맙습니다. – SmulianJulian

관련 문제