You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jmeter-dev@jakarta.apache.org by se...@apache.org on 2008/01/09 20:33:55 UTC

svn commit: r610520 - /jakarta/jmeter/trunk/src/core/org/apache/jmeter/save/CSVSaveService.java

Author: sebb
Date: Wed Jan  9 11:33:23 2008
New Revision: 610520

URL: http://svn.apache.org/viewvc?rev=610520&view=rev
Log:
Add saveCSVStats(DefaultTableModel, FileWriter)

Modified:
    jakarta/jmeter/trunk/src/core/org/apache/jmeter/save/CSVSaveService.java

Modified: jakarta/jmeter/trunk/src/core/org/apache/jmeter/save/CSVSaveService.java
URL: http://svn.apache.org/viewvc/jakarta/jmeter/trunk/src/core/org/apache/jmeter/save/CSVSaveService.java?rev=610520&r1=610519&r2=610520&view=diff
==============================================================================
--- jakarta/jmeter/trunk/src/core/org/apache/jmeter/save/CSVSaveService.java (original)
+++ jakarta/jmeter/trunk/src/core/org/apache/jmeter/save/CSVSaveService.java Wed Jan  9 11:33:23 2008
@@ -31,6 +31,8 @@
 import java.util.List;
 import java.util.Vector;
 
+import javax.swing.table.DefaultTableModel;
+
 import org.apache.commons.collections.map.LinkedMap;
 import org.apache.commons.lang.CharUtils;
 import org.apache.commons.lang.StringUtils;
@@ -627,6 +629,40 @@
                     writer.write(DELIM);
                 }
                 Object item = row.elementAt(idy);
+                writer.write( quoteDelimiters(String.valueOf(item),SPECIALS));
+            }
+            writer.write(LINE_SEP);
+        }
+    }
+
+	/**
+     * Method saves aggregate statistics as CSV from a table model.
+     * Same as {@link #saveCSVStats(Vector, FileWriter, String[])} except
+     * that there is no need to create a Vector containing the data.
+     * 
+     * @param model table model containing the data
+     * @param writer output file
+     * @throws IOException
+     */
+    public static void saveCSVStats(DefaultTableModel model, FileWriter writer) throws IOException {
+    	final char DELIM = ',';
+		final String LINE_SEP = System.getProperty("line.separator"); // $NON-NLS-1$
+		final char SPECIALS[] = new char[] {DELIM, QUOTING_CHAR};
+		final int columns = model.getColumnCount();
+		final int rows = model.getRowCount();
+    	for (int i=0; i < columns; i++){
+    		if (i>0) {
+    			writer.write(DELIM);
+    		}
+    		writer.write(quoteDelimiters(model.getColumnName(i),SPECIALS));
+    	}
+    	writer.write(LINE_SEP);
+        for (int row=0; row < rows; row++) {
+            for (int column=0; column < columns; column++) {
+                if (column > 0) {
+                    writer.write(DELIM);
+                }
+                Object item = model.getValueAt(row, column);
                 writer.write( quoteDelimiters(String.valueOf(item),SPECIALS));
             }
             writer.write(LINE_SEP);



---------------------------------------------------------------------
To unsubscribe, e-mail: jmeter-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jmeter-dev-help@jakarta.apache.org