|
From: <be...@us...> - 2006-10-26 15:54:46
|
Revision: 129
http://svn.sourceforge.net/pzfilereader/?rev=129&view=rev
Author: benoitx
Date: 2006-10-26 08:54:43 -0700 (Thu, 26 Oct 2006)
Log Message:
-----------
Added a heuristic test that proves that using a StringBuffer delete is better than creating a new one...
Modified Paths:
--------------
trunk/PZFileReaderSamples/src/main/java/net/sf/pzfilereader/examples/Examples.java
Modified: trunk/PZFileReaderSamples/src/main/java/net/sf/pzfilereader/examples/Examples.java
===================================================================
--- trunk/PZFileReaderSamples/src/main/java/net/sf/pzfilereader/examples/Examples.java 2006-10-26 15:53:08 UTC (rev 128)
+++ trunk/PZFileReaderSamples/src/main/java/net/sf/pzfilereader/examples/Examples.java 2006-10-26 15:54:43 UTC (rev 129)
@@ -68,7 +68,8 @@
menu.addMenuItem("DelimitedMultiLine", "doDelimitedMultiLine", false);
menu.addMenuItem("NumericsAndDates", "doNumericsAndDates", false);
menu.addMenuItem("Ask for GC", "doGC", false);
-
+ menu.addMenuItem("Test StringBuffer", "doStringBuffer", false);
+
menu.addMenuItem("Who you gonna call?", "doCall", false);
menu.displayMenu();
}
@@ -82,69 +83,69 @@
public void doCSVHeaderAndTrailer() {
try {
final String mapping = ConsoleMenu.getString("Mapping ", CSVHeaderAndTrailer.getDefaultMapping());
- final String data = ConsoleMenu.getString( "Data ", CSVHeaderAndTrailer.getDefaultDataFile());
- CSVHeaderAndTrailer.call(mapping,data);
+ final String data = ConsoleMenu.getString("Data ", CSVHeaderAndTrailer.getDefaultDataFile());
+ CSVHeaderAndTrailer.call(mapping, data);
} catch (Exception e) {
e.printStackTrace();
}
}
-
+
public void doCSVPerformanceTest() {
try {
final String mapping = ConsoleMenu.getString("CSV File ", "SampleCSV.csv");
final boolean data = ConsoleMenu.getBoolean("Traverse the entire parsed file", true);
final boolean verbose = ConsoleMenu.getBoolean("Verbose", false);
- CSVPerformanceTest.call(mapping,verbose,data);
+ CSVPerformanceTest.call(mapping, verbose, data);
} catch (Exception e) {
e.printStackTrace();
}
}
-
+
public void doDelimitedWithPZMap() {
try {
final String mapping = ConsoleMenu.getString("Mapping ", DelimitedWithPZMap.getDefaultMapping());
- final String data = ConsoleMenu.getString( "Data ", DelimitedWithPZMap.getDefaultDataFile());
- DelimitedWithPZMap.call(mapping,data);
+ final String data = ConsoleMenu.getString("Data ", DelimitedWithPZMap.getDefaultDataFile());
+ DelimitedWithPZMap.call(mapping, data);
} catch (Exception e) {
e.printStackTrace();
}
}
-
+
public void doDelimitedWithPZMapErrors() {
try {
final String mapping = ConsoleMenu.getString("Mapping ", DelimitedWithPZMapErrors.getDefaultMapping());
- final String data = ConsoleMenu.getString( "Data ", DelimitedWithPZMapErrors.getDefaultDataFile());
- DelimitedWithPZMapErrors.call(mapping,data);
+ final String data = ConsoleMenu.getString("Data ", DelimitedWithPZMapErrors.getDefaultDataFile());
+ DelimitedWithPZMapErrors.call(mapping, data);
} catch (Exception e) {
e.printStackTrace();
}
}
-
+
public void doDelimitedFileExportToExcel() {
try {
final String mapping = ConsoleMenu.getString("Mapping ", DelimitedFileExportToExcel.getDefaultMapping());
- final String data = ConsoleMenu.getString( "Data ", DelimitedFileExportToExcel.getDefaultDataFile());
- DelimitedFileExportToExcel.call(mapping,data);
+ final String data = ConsoleMenu.getString("Data ", DelimitedFileExportToExcel.getDefaultDataFile());
+ DelimitedFileExportToExcel.call(mapping, data);
} catch (Exception e) {
e.printStackTrace();
}
}
-
+
public void doFixedLengthWithPZMap() {
try {
final String mapping = ConsoleMenu.getString("Mapping ", FixedLengthWithPZMap.getDefaultMapping());
- final String data = ConsoleMenu.getString( "Data ", FixedLengthWithPZMap.getDefaultDataFile());
- FixedLengthWithPZMap.call(mapping,data);
+ final String data = ConsoleMenu.getString("Data ", FixedLengthWithPZMap.getDefaultDataFile());
+ FixedLengthWithPZMap.call(mapping, data);
} catch (Exception e) {
e.printStackTrace();
}
}
-
+
public void doFixedLengthHeaderAndTrailer() {
try {
final String mapping = ConsoleMenu.getString("Mapping ", FixedLengthHeaderAndTrailer.getDefaultMapping());
- final String data = ConsoleMenu.getString( "Data ", FixedLengthHeaderAndTrailer.getDefaultDataFile());
- FixedLengthHeaderAndTrailer.call(mapping,data);
+ final String data = ConsoleMenu.getString("Data ", FixedLengthHeaderAndTrailer.getDefaultDataFile());
+ FixedLengthHeaderAndTrailer.call(mapping, data);
} catch (Exception e) {
e.printStackTrace();
}
@@ -153,19 +154,18 @@
public void doLargeDelimitedWithPZMap() {
try {
final String mapping = ConsoleMenu.getString("Mapping ", LargeDelimitedWithPZMap.getDefaultMapping());
- final String data = ConsoleMenu.getString( "Data ", LargeDelimitedWithPZMap.getDefaultDataFile());
- LargeDelimitedWithPZMap.call(mapping,data);
+ final String data = ConsoleMenu.getString("Data ", LargeDelimitedWithPZMap.getDefaultDataFile());
+ LargeDelimitedWithPZMap.call(mapping, data);
} catch (Exception e) {
e.printStackTrace();
}
}
-
public void doLargeFixedLengthWithPZMap() {
try {
final String mapping = ConsoleMenu.getString("Mapping ", LargeFixedLengthWithPZMap.getDefaultMapping());
- final String data = ConsoleMenu.getString( "Data ", LargeFixedLengthWithPZMap.getDefaultDataFile());
- LargeFixedLengthWithPZMap.call(mapping,data);
+ final String data = ConsoleMenu.getString("Data ", LargeFixedLengthWithPZMap.getDefaultDataFile());
+ LargeFixedLengthWithPZMap.call(mapping, data);
} catch (Exception e) {
e.printStackTrace();
}
@@ -177,7 +177,7 @@
final int rows = ConsoleMenu.getInt("Number of rows", 2000000);
String filename = "LargeSampleCSV.csv";
CSVTestFileCreator.createFile(cols, rows, filename);
-
+
System.out.println("Large file created");
CSVLarge.call(filename);
@@ -185,10 +185,10 @@
e.printStackTrace();
}
}
-
+
public void doLowLevelParse() {
try {
- final String data = ConsoleMenu.getString( "Data ", LowLevelParse.getDefaultDataFile());
+ final String data = ConsoleMenu.getString("Data ", LowLevelParse.getDefaultDataFile());
LowLevelParse.call(data);
} catch (Exception e) {
e.printStackTrace();
@@ -197,7 +197,7 @@
public void doDelimitedMultiLine() {
try {
- final String data = ConsoleMenu.getString( "Data ", DelimitedMultiLine.getDefaultDataFile());
+ final String data = ConsoleMenu.getString("Data ", DelimitedMultiLine.getDefaultDataFile());
DelimitedMultiLine.call(data);
} catch (Exception e) {
e.printStackTrace();
@@ -207,8 +207,8 @@
public void doNumericsAndDates() {
try {
final String mapping = ConsoleMenu.getString("Mapping ", NumericsAndDates.getDefaultMapping());
- final String data = ConsoleMenu.getString( "Data ", NumericsAndDates.getDefaultDataFile());
- NumericsAndDates.call(mapping,data);
+ final String data = ConsoleMenu.getString("Data ", NumericsAndDates.getDefaultDataFile());
+ NumericsAndDates.call(mapping, data);
} catch (Exception e) {
e.printStackTrace();
}
@@ -218,4 +218,33 @@
System.gc();
}
+ public void doStringBuffer() {
+ final int repeat = ConsoleMenu.getInt("How many times?", 100000);
+ final int characters = ConsoleMenu.getInt("How many char?", 20);
+
+ long start = System.currentTimeMillis();
+ for (int i = 0; i < repeat; i++) {
+ StringBuffer sb = new StringBuffer();
+ for (int u = 0; u < 1000; u++) {
+ sb.append("h");
+ }
+ }
+ long stop = System.currentTimeMillis();
+
+ System.out.println("Creating new SB " + (stop - start) + " ms.");
+
+ start = System.currentTimeMillis();
+ StringBuffer sb = new StringBuffer();
+ for (int i = 0; i < repeat; i++) {
+ for (int u = 0; u < characters; u++) {
+ sb.append("h");
+ }
+ sb.delete(0, sb.length());
+ }
+ stop = System.currentTimeMillis();
+
+ System.out.println("Deleting existing SB " + (stop - start) + " ms.");
+
+ }
+
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|