1 32 33 package it.businesslogic.ireport.connection; 34 35 import java.io.*; 36 import java.util.*; 37 41 public class JRCSVDataSource implements net.sf.jasperreports.engine.JRDataSource { 42 43 String row = ""; 44 LineNumberReader lineNumberReader; 45 46 47 public JRCSVDataSource(String cvsFile) { 48 try { 49 lineNumberReader = new LineNumberReader( new FileReader(cvsFile)); 50 } catch (Exception ex) { ex.printStackTrace();} 51 } 52 53 public Object getFieldValue(net.sf.jasperreports.engine.JRField jRField) throws net.sf.jasperreports.engine.JRException { 54 String field = jRField.getName(); 55 int fieldPosition = Integer.parseInt(field.substring(7)); StringTokenizer st = new StringTokenizer(row,";"); 57 while (st.hasMoreTokens()) 58 { 59 fieldPosition--; String token = st.nextToken(); 61 if (fieldPosition == 0) return token; 62 } 63 return null; } 65 66 public boolean next() throws net.sf.jasperreports.engine.JRException { 67 try { 68 row = lineNumberReader.readLine(); 69 if (row.length()>0) return true; 70 } catch (Exception ex) { } 71 return false; 72 } 73 74 } 75 | Popular Tags |