The easiest way to parse a file in Comma Serapated Format is to use the apache commons library. The library can parse the format exported from Excel. The jar file is available in the main repository of maven:
<dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-csv</artifactId> <version>1.4</version> <type>jar</type> </dependency>
This example loads the file from the path passed as a parameter. The file is loaded using a FileReader. A CSVParser is then created parsing the Reader using the Excel format. The example is based on a file exported from Google webmaster tools. The first line contains the header of the file and needs to be handled separately in the main loop. Once the header are processed all the records can be processed. Here, we just write them in the output.
import org.apache.commons.csv.CSVRecord; import org.apache.commons.csv.CSVParser; import java.io.FileReader; import java.io.Reader; import org.apache.commons.csv.CSVFormat; public class ParseCSVFile { public void processFile(String file){ try { Reader in = new FileReader(file); CSVParser parser = CSVFormat.EXCEL.parse(in); // Loop on all the records of the file recordsLoop:for (CSVRecord record : parser) { // Process the headers in the first line if( record.getRecordNumber() == 1 ){ System.out.println( record.get( 0 ) + "\t" + record.get( 1 ) + "\t" + record.get( 2 ) + "\t" + record.get( 3 ) ); continue recordsLoop; } // Display the current record System.out.println( record.get( 0 ) + "\t" + record.get( 1 ) + "\t" + record.get( 2 ) + "\t" + record.get( 3 ) ); // We only display the first 2 records if( record.getRecordNumber() == 3 ) break; } } catch( Exception e ){ e.printStackTrace(); } } public static void main(String[] argv){ ParseCSVFile csvFile = new ParseCSVFile(); csvFile.processFile( "SearchAnalytics.csv" ); } }
Pages Clicks Impressions CTR http://oliviertech.com/java/generate-SHA1-hash-from-a-String/ 436 8445 5.16% http://oliviertech.com/java/generate-SHA256--SHA512-hash-from-a-String/ 380 5826 6.52%
The file in CSV format are convenient and easy to read. The main drawback is that the format is prone to errors as tools exporting in CSV don't import them back. It is preferable to use xml.