DataStreams component library for .Net developers

The following is a paid review:

DataStreams is a component library for .Net developers to easily integrate data from various formats like CSV, Excel, and XML into their applications.


Read, write, and bulk load CSV files.

Read and bulk load Excel XLS spreadsheet files.

Read and bulk load XML files.

Check out the demo!

Csv Reader is an extremely fast and stable .Net class for stream based parsing of virtually any commonly found delimited data format, CSV files, tab delimited files, etc. It's usable from C#, VB.Net, ASP.Net, or any other .Net language. It's compatible with the 1.0, 1.1, and 2.0 .Net frameworks. The methods are designed for ease of use, while the inner architecture is designed purely for speed and efficiency. Parsing is done using the de facto standard CSV file specifications. It handles quoted fields, delimiters in the data, and even data that spans across multiple lines. This gives you the ability to open csv files, edit csv files, and save csv files all directly from code. Data can be parsed in less than half of the time of any other parser it has been benchmarked against. Rough benchmarks on a 2 Ghz processor, parsing common comma separated columns is 20 MB, or 390,000 rows with 5 columns each, almost 2,000,000 cells total, of data parsing per second. Virtually no garbage collection is needed from the framework because of object reuse internally while parsing. All development is thoroughly unit tested to guarantee fewer bugs and to insure proper handling of extreme cases, currently using 195 test cases and 1308 asserts across 4800 lines of test code. Pricing is extremely cheap and licensing is amazingly open. One license is good across all machines enterprise wide.

sample content of a csv file
sample display of csv data in grid


View Csv parser benchmarks versus ODBC and Jet drivers

For more details, visit the BENCHMARKS section to see how Csv Reader stacks up against the competition.


Look at the several code samples provided in the CODE SAMPLES section to see how the code is used.


Download compiled help docs here: or view DataStreams docs online.


"Have installed it and used it and I only wish I had found it and used it earlier. 'Does just what it says on the tin', many thanks."


"The parser works perfectly - and I've found the online examples very helpful. Suits our needs to a tee."


"Thanks for the great tool!"


"I'm almost done with my import project, in 4 days instead of the 3 weeks I had estimated. Excellent product!"


  • Stream based file parsing allowing for parsing of large files without storing the entire file contents in memory
  • Simple reader pattern movement through file
  • Simple access to field data by index or by field name
  • Internal parsing using arrays instead of strings for fast looping over large files
  • Uses built in framework functionality to handle most encoding issues instead of guessing or hardcoding
  • Includes a CSV writer to ease the worries while creating CSV data. No more needing to worry about what to replace with what to match up with delimiters, text qualifiers, etc
  • Standard comma and tab delimited data
  • End of records using Mac, Unix, or Windows end of line markers without predicting or specifying
  • Quote text qualified fields using double quotes
  • Alternate field delimiters other than commas, ie. pipe, tab, etc
  • Alternate text qualifiers
  • Occurrences of field delimiter within text qualified field
  • Occurrences of text qualifier within text qualified field using doubled up syntax
  • Alternate backslash text qualifier escaping syntax
  • Occurrences of any character, including record end delimiters inside text qualified fields
  • Automatic trimming of leading and trailing spaces and tabs in a non text qualified field
  • Using one char that's normally used as a record end delimiter as a field delimiter and a different one as the record end delimiter as commonly used in Unix files with CR as the field delimiter and LF as the record delimiter
  • All encodings, ANSI, UTF-8, Unicode, ASCII, etc
  • First record containing field names
  • Reading data from a System.IO.StreamReader that's wrapped around a System.IO.Stream that can come from anywhere, not just a System.IO.FileStream
If you have an unsupported format, or are unsure whether the format is supported, please email

For more info Visit: