SSISO Community

시소당

JExcelApi v2.2.16 를 이용한 엑셀파일 읽기,저장하기

제  홈쥐에  올린글입니다.  부디  도움이  되길...

http://www.andykhan.com에서  JExcelApi  v2.2.16  를  다운받도록  합니다.  그리고  나서  WEB-  INF/lib에  저장후  시작토록  합니다.  tutorial에  있는  내용인데  그냥  한번  적어봅니다.  ^^;;  저는  Excel  2000  으로  확인해  보았습니다.

우선  엑셀파일  읽기입니다.
<%@  page  contentType="text/html;  charset=euc-kr"%>
<%@  page  import="java.io.File,java.util.Date,jxl.*"%>
<%
Workbook  workbook  =  Workbook.getWorkbook(new  File("C:/resin/doc/excel/Book1.xls"));

Sheet  sheet  =  workbook.getSheet(0);
Cell  a1  =  sheet.getCell(0,0);
Cell  b2  =  sheet.getCell(1,1);
Cell  c3  =  sheet.getCell(0,2);

String  stringa1  =  a1.getContents();
String  stringb2  =  b2.getContents();
String  stringc3  =  c3.getContents();

workbook.close();
%>
<%=stringa1%>
<%=stringb2%>
<%=stringc3%>

엑  셀파일이  위치한  곳을  지정  파일을  읽어들입니다.  그리고  workbook에다  넣습니다.  그리고  시트한장을  읽어들입니다.  그리고  뿌려  줍니다.  전부입니다.  ^^;;  간단하죠.  여기서  헷갈리는  것이  보통  행,렬  단위로  하는데  렬,행입니다.  외국엔  이러나  보죠?  ㅋㅋ  ㅋ
잘  나오나요?  다음은  쓰기입니다.

<%@  page  contentType="text/html;  charset=euc-kr"%>
<%@  page  import="java.io.File,java.util.Date,jxl.*,jxl.write.*"%>
<%
WritableWorkbook  workbook  =  Workbook.createWorkbook(new  File("C:/resin/doc/excel/Book1.xls"));

WritableSheet  sheet  =  workbook.createSheet("First  Sheet",  0);
Label  label  =  new  Label(0,2,"A  label  record");
sheet.addCell(label);

jxl.write.Number  number  =  new  jxl.write.Number(3,4,3.1415);
sheet.addCell(number);

workbook.write();
workbook.close();
%>
쓰기와  비슷하죠.  렬과  행을  정해주고  그곳에  글을  써놓고  그리고  숫자는  Number란  클래스를  쓰는데  예제데로  하면  에러납니다.  예제는  그냥  Number라고  되어있습니다.  그대로  하면
/excel/write.jsp:10:  Ambiguous  class:  java.lang.Number  and  jxl.write.Number
Number  number  =  new  Number(3,4,3.1415);
^
/excel/write.jsp:10:  Ambiguous  class:  java.lang.Number  and  jxl.write.Number
Number  number  =  new  Number(3,4,3.1415);
                                        ^
2  errors

이런에러가  나오죠.  
ambiguous  [æmb&#237;gjus]  a.  
1  두  가지  뜻으로  해석할  수  있는;  다의(多義)의(  vague  )
2  모호한;  분명하지  않은;  확실치  않은  

이  넘이  java.lang.Number  인지  jxl.write.Number  인지  모르는  것입니다.  그래서    jxl.write.Number  라고  적어준것입니다.  그리고  확인해  보면  엑셀파일이  생긴것을  확인할  수가  있습니다.  물론  한글도    잘되네요.  그리고  수정하고  하는것도  있는데  자세한것은  tutorial을  참고하시기  바랍니다.  DB붙여서  조금  응용하면  좋겠습니다.  

출처  :  http://tong.nate.com/javasarang/39798353

948 view

4.0 stars