public void Bug58245_XSSFSheetIterator() { XSSFWorkbook wb = new XSSFWorkbook(); wb.CreateSheet(); // ===================================================================== // Case 1: Existing code uses XSSFSheet for-each loop // ===================================================================== // Original code (no longer valid) /* * for (XSSFSheet sh : wb) { * sh.createRow(0); * } */ // Option A: foreach (XSSFSheet sh in wb) { sh.CreateRow(0); } // Option B (preferred for new code): foreach (ISheet sh in wb) { sh.CreateRow(0); } // ===================================================================== // Case 2: Existing code creates an iterator variable // ===================================================================== // Original code (no longer valid) /* * Iterator<XSSFSheet> it = wb.iterator(); * XSSFSheet sh = it.next(); * sh.createRow(0); */ // Option A: { IEnumerator <XSSFSheet> it = wb.GetEnumerator() as IEnumerator <XSSFSheet>; XSSFSheet sh = it.Current; sh.CreateRow(0); } // Option B: { //IEnumerator<XSSFSheet> it = wb.XssfSheetIterator(); //XSSFSheet sh = it.Current; //sh.CreateRow(0); } // Option C (preferred for new code): { IEnumerator <ISheet> it = wb.GetEnumerator() as IEnumerator <ISheet>; ISheet sh = it.Current; sh.CreateRow(0); } wb.Close(); }