]> source.dussan.org Git - poi.git/commitdiff
Various quickguide updates
authorNick Burch <nick@apache.org>
Sun, 30 Mar 2008 14:03:37 +0000 (14:03 +0000)
committerNick Burch <nick@apache.org>
Sun, 30 Mar 2008 14:03:37 +0000 (14:03 +0000)
git-svn-id: https://svn.apache.org/repos/asf/poi/branches/ooxml@642740 13f79535-47bb-0310-9956-ffa450edef68

src/documentation/content/xdocs/spreadsheet/quick-guide.xml
src/examples/src/org/apache/poi/ss/usermodel/examples/FromQuickGuide.java

index 528582beb0a40ff17776051068825771d7a61302..76f3263fe5b87c273498712ced512f7f60f9c4d4 100644 (file)
                                <p>Sometimes, you'd like to just iterate over all the rows in
                                a sheet, or all the cells in a row. This is possible with
                                a simple for loop.</p>
-                               <p>Luckily, this is very easy. HSSFRow defines a 
+                               <p>Luckily, this is very easy. Row defines a 
                                <em>CellIterator</em> inner class to handle iterating over 
                                the cells (get one with a call to <em>row.cellIterator()</em>),
-                               and HSSFSheet provides a <em>rowIterator()</em> method to
+                               and Sheet provides a <em>rowIterator()</em> method to
                                give an iterator over all the rows.</p>
-                               <p>(Unfortunately, due to the broken and
-                               backwards-incompatible way that Java 5 foreach loops were
-                               implemented, it isn't possible to use them on a codebase
-                               that supports Java 1.4, as POI does)</p>
+                               <p>Alternately, Sheet and Row both implement java.lang.Iterable,
+                so if you're using Java 1.5, you can simply take advantage
+                of the built in "foreach" support - see below.</p>
                                <source>
-       HSSFSheet sheet = wb.getSheetAt(0);
+       Sheet sheet = wb.getSheetAt(0);
        for (Iterator rit = sheet.rowIterator(); rit.hasNext(); ) {
-               HSSFRow row = (HSSFRow)rit.next();
+               Row row = (Row)rit.next();
                for (Iterator cit = row.cellIterator(); cit.hasNext(); ) {
-                       HSSFCell cell = (HSSFCell)cit.next();
+                       Cell cell = (Cell)cit.next();
                        // Do something here
                }
        }
        }
                                </source>
                 </section>
-                <section><title>Iterate over rows and cells using Java 1.5 foreach loops - OOXML Branch Only</title>
+                <section><title>Iterate over rows and cells using Java 1.5 foreach loops</title>
                                <p>Sometimes, you'd like to just iterate over all the rows in
                                a sheet, or all the cells in a row. If you are using Java
                                5 or later, then this is especially handy, as it'll allow the
                                new foreach loop support to work.</p>
-                               <p>Luckily, this is very easy. Both HSSFSheet and HSSFRow
+                               <p>Luckily, this is very easy. Both Sheet and Row
                                implement <em>java.lang.Iterable</em> to allow foreach
-                               loops. For HSSFRow this allows access to the 
+                               loops. For Row this allows access to the 
                                <em>CellIterator</em> inner class to handle iterating over 
-                               the cells, and for HSSFSheet gives the 
+                               the cells, and for Sheet gives the 
                                <em>rowIterator()</em> to iterator over all the rows.</p>
                                <source>
-       HSSFSheet sheet = wb.getSheetAt(0);
-       for (HSSFRow row : sheet.rowIterator()) {
-               for (HSSFCell cell : row.cellIterator()) {
+       Sheet sheet = wb.getSheetAt(0);
+       for (Row row : sheet) {
+               for (Cell cell : row) {
                        // Do something here
                }
        }
                                </source>
-                               <note>This only works on the OOXML branch of POI</note>
                 </section>
                 <anchor id="TextExtraction"/>
                 <section><title>Text Extraction</title>
index 88433e1b5e8b773c6996bc05f5e8378ad52d4ee0..8563413d8a419bc280d96d247884e1a0d60a1610 100644 (file)
@@ -24,8 +24,6 @@ import org.apache.poi.hssf.usermodel.HSSFWorkbook;
 import org.apache.poi.ss.usermodel.Cell;
 import org.apache.poi.ss.usermodel.CellStyle;
 import org.apache.poi.ss.usermodel.CreationHelper;
-import org.apache.poi.ss.usermodel.DataFormat;
-import org.apache.poi.ss.usermodel.RichTextString;
 import org.apache.poi.ss.usermodel.Row;
 import org.apache.poi.ss.usermodel.Sheet;
 import org.apache.poi.ss.usermodel.Workbook;
@@ -125,4 +123,16 @@ public class FromQuickGuide {
            wb.write(fileOut);
            fileOut.close();
        }
+       
+       public void iterating() {
+           Workbook wb = new HSSFWorkbook();
+           Sheet sheet = wb.createSheet("new sheet");
+           
+           for (Row row : sheet) {
+               for (Cell cell : row) {
+                   // Do something here
+                       System.out.println(cell.getCellType());
+               }
+           }
+       }
 }