FileHelpers Library / News: Recent posts

FileHelpers 2.0.0 Released

Here do you have all the stuff that keep me busy for a while :P

Here is the download link:

And the History en HTML format with links:

Breaking Changes

The constructor of the MultiRecordEngine was changed to allow params args, and to allow users to dont pass the RecordSelector (in write operations were dont nedded).
EndsRead and EndsWrite deleted, now you have a Close() operation to simplify the API and to make it similar to the System.Data namespace. (The async engines also implement IDisposable)
Rename FileHelperException --> FileHelpersException a better name =) and an easy to solve problem
By default the numeric fields in the FixedLengthRecords that dont have an [FieldAlign] will be aligned to the right and the rest the left by default, with this we avoid the problem of generate files with different meaning when read and write

Performance Related
-------------------... read more

Posted by Marcos Meli 2007-04-10

New FileHelpers Dev Blog

Hello Everybody

I´m alive and coding again =)

I´m trying to do the last testing and coding of the version 1.7.0 I hope to finish it before the end of year !!

In the meanwhile you can check out the new blog to share ideas about the development of the library.

Happy Codding


Posted by Marcos Meli 2006-12-11

Domain up and running =)

Thanks to the donation of Antoine Marie ( , just for my birthday, we can use now the new domain:

So the addresse of the forums is

I´m very happy with the donation, THANKS ANTOINE

Remember to send any feedback about the library.

Posted by Marcos Meli 2006-08-24

FileHelpers 1.6.0 Released

Hi All !!

The library has 10 months now and a lot of things were added. So I want to thanks you all the people that send your feedback, post motivating entries on the web and a lot of other ones that help me in the development. (partial list of contributors)

Now the important things !!... RunTime Records are here thanks to some help Gerhardt Scriven to use RunTime Compilation. Enjoy it !!

I think in this version like the 2.0 version because the RunTime Records were one of the most requested features and were one of the most hard to implement features, A lot of effort was put in the usability and in a clear API, if you have any suggestion please post it in the forums =)
Other important news are the CsvEngine (for generic Csv files), the FileDiffEngine, the MultiRecordEngine,..

Breaking changes: ... read more

Posted by Marcos Meli 2006-08-16

FileHelpers 1.5.0 Released

With some delays but the library is always moving forward thanks to a hard work and the help of all you.

Breaking changes:

  • Both DataStorages: SqlServerStorage and AccessStorage completely changed, from now you don´t need to override this classes (in fact you can´t because are sealed)
    You can use these classes as client and provide the callbacks for the Insert and Fill record methods.(check the examples)
  • The FieldQuoted attribute was completely rewritten to support optional quote for read, write or both.
    So you need to use now the QuoteMode enum and not only a boolean. (For Excel generated CSV files you must use the QuoteMode.OptionalForBoth value) (check the examples)
  • MOD: DataBaseStorage to DatabaseStorage (Case change)
  • MOD: Extract and Insert Records now returns the inserted or extracted records ... read more
Posted by Marcos Meli 2006-06-26

FileHelpers 1.5.0 Closed beta

I´m really close to the new 1.5.0 release, I´m in the task of rewrite some docs and test the new features.

I need a bit of help to Review the docs and get the last time feedback about the new features to correct or add all the small things that you found useful.

I think that you´ll be happy with all the new features and the improved quality =)

Any body interested in help in this task send my a mail to marcosdotnet [at] or post a message in the support forums at read more

Posted by Marcos Meli 2006-06-13

FileHelpers in Level Extreme Magazine

You can check the last article about the FileHelpers in the May issue of the Level Extreme magazine at:,7,10,52

Full issue here:,7,11,May2006

Feedback is welcome :)

Posted by Marcos Meli 2006-05-06

FileHelpers 1.4.0 Released

After a lot of work I release it !!!

Mayor changes:

DEL: ConverterKind.Custom was removed bacause was irrelevant to use custom converters now the lib use [FieldConverter(typeof(YouConverter))]
DEL: Some Exceptions trying to simplify the Exception handling and reducing the number of differnt exceptions. The deleted exceptions are NullValueException, QuotedStringException and InternalException all replaced with the BadUsageException.
FIX: The Async engines now uses the ErrorMode in all cases.
MOD: The MasterDetailEngine now takes the IgnoreFirst and IgnoreLast options from the master record an not from the detail.
MOD: All methods in the FileHelpers Engines that returns bool changed to void because they was using error handling with exceptions and a bool result is redundant and useless, this provide also a more clear OOD.
MOD: LoadErrors from the ErrorManager class now is static.
ADD: The CommonEngine: with four static methods for the common operations.
ADD: The Progress Notification feature, with it you can get notified of the progress of each opration.
ADD: Full ExcelCSV support, a new parameter to the FieldQuoted attribute to indicate if the Quote is optional (like excel does with CSV)
NEWS: Full Subversion support in Sourceforge: now you can help in the development using any subversion client and send me the patchs with your changes. ... read more

Posted by Marcos Meli 2006-03-18

FileHelpers Forums

I´m proud to announce the new FileHelpers Forums at

In this place you can post your support questions, new ideas, bug reports and everything else.

I think that the forums are a better place to discuss about the library then I keep sending mails to the list but the forums be the main place to share your ideas and problems.

Check it out

Posted by Marcos Meli 2006-03-17

What add next to the FileHelpers ?

Hi All !!

I´m comming back to the work and adding some new features to the library.

This are some of the next steps, I need your suggestion to know what is the most useful or what do you want that I do first:

  • IgnoreIfContains: an attribute to ignore lines that contains some string.

  • FileTransformation: to change from Delimited to Fixed or from CSV to Tab delimited

  • Template Support for ExcelStorage

  • Progress notification: An events in the engines that can be customized to fires each n% or n records. (adding my XpProgressBar =)

  • Diff Support: an option to compare two datastorages and generate a file with the differences.

  • Enhace the Wizard.... read more

Posted by Marcos Meli 2006-03-02

FileHelpers 1.3.5 Released

This release has six new features:

  • FileHelpers Wizard - An Simple UI to generate the record classes (RC1)
  • .NET 2.0 Generics Support - A strong typed and cast less option.
  • Master Detail Engine
  • IgnoreLastAttribute to discard the last n lines of a file or stream
  • EnumConverter to auto parse and write enum values in the fields.
  • Full VB.NET Support: solve the previous versions issues. ... read more
Posted by Marcos Meli 2006-02-16

FileHelpers 1.3.2 Released

The new version has some bug fixes and 2 new features.

Change Log:

FIX: FieldIgnore: Problems when used in th elast field in the record class.
FIX: ExcelStorage.SheetName: didn´t work, now yes and catch the sheet don´t exists error.
DEL: ColumnNumber removed from the Engine and the ErrorInfo (didn´t work anyway)
MOD: Refactor some internal class to catch better the exceptions and more clear error messagges.
MOD: Some specific code reported by FxCop as problematic.
ADD: WriteNexts and ReadNexts to the FileHelperAsyncEngine to process more than one record at once.
ADD: A lot of contributors this weeks I recieve a lot of congrats and great ideas !! thanks to all.
ADD: A DeveloperStuff directory in the distribution with links to the SVn, Trac, Mailing list, used tools, etc.
ADD: More NUnit tests (now 137)
NEWS: Now using Clover.NET (thanks to Cenqua fo rthe FREE licence for the project !!!) shortly I upload the coverage results.
NEWS: Created a SVN Repository thanks to the hosting of OpenSVN (Great Work !!)
Repository: (Anonymous Checkout Allowed)
Repository (SSH):
Trac : (with not so much yet)

Look at the complete history for more info:

Marcos Meli

Posted by Marcos Meli 2006-01-28

SVN repository ready !!

In the last week I create a SVN repository to the developer online collaboration. This are the links.

Repository: (Anonymous Checkout Allowed)

Repository (SSH):

Trac : (with not so much yet)

Thanks to the hosting of OpenSVN (Great Work !!)
Marcos Meli

Posted by Marcos Meli 2006-01-28

FileHelpers 1.3.1 Released

The new version has a lot of new and enhaced features.

Change Log:

FIX: ExcelStorage: Fail when the number of columns in the worksheet is 1.
FIX: BeginReadFile now uses the IgnoreFirst(n) attribute.
DEL: FileHelpers.Convertion Namespace (it has only one class "ConverterBase" that now is in the root namespace)
MOD: ExcelStorage is now in advanced beta (only Date types don´t work)
MOD: A Tips for VB.NET section in the docs.
MOD: Internal refactors to improve the design.
ADD: The WriteFile and WriteStream methods now have an optional third param with the max number of records to write.
ADD: The ErrorManager class to handle the errors not only in the filehelper engine, also in the DataStorages.
ADD: FieldIgnored to exclude the specified Field from the engine.
ADD: A navigator bar to the CHM Help and Home Site.
ADD: A search option based in Google Site Search (another goodie from google =)
ADD: More examples in the SDK help.
ADD: The ReadString and WriteString methods to the FileHelperEngine.
ADD: The WriteFile, WriteStream and WriteString have an optional parameter with the max number of records to write.
ADD: RecordInfo class that holds all the properties of the records, including the converters, with this the DataStorage can browse the properties of each field in a nice way.
ADD: More NUnit tests (now 122)... read more

Posted by Marcos Meli 2006-01-16

New Home Page and Mailing List

Today I finish to upload the new version of the home page with search options thank to google.

In the other hand a mailing list has been created. To join it you must to send a mail to:

with the subject: subscribe

or enter here:

Marcos Meli

Posted by Marcos Meli 2006-01-16

FileHelpers 1.2.0 Released

Changes from version 1.1.4

1.2 (7-Dec-2005)
FIX : BeginReadFile now is Encoding Depending.
MOD: The Decimal, Double and Single converters are more smart to discard blanks.
MOD: More complete NAnt build file.
MOD: Enhanced Documentation Browsing.
MOD: A lot of name Refactors to use the new naming conventions
FixedLengthAttribute -> FieldFixedLengthAttribute
DelimitedAttribute -> FieldDelimiterAttribute
ConverterAttribute -> FieldConverterAttribute
FieldAlign -> AlignMode
AlignAttribute -> FieldAlignAttribute
TrimAttribute -> FieldTrimAttribute
NullValueAttribute -> FieldNullValueAttribute
QuotedAttribute -> FieldQuotedAttribute
ADD: New form in the demo for Time and Stress Tests.
ADD: New form in the demo for Fixed Length Tests.
ADD: More NUnit Tests. (now are 90+)
ADD: Require a Custom Converter for non system Types.
ADD: CustomConverter example in the docs (see advance example). ... read more

Posted by Marcos Meli 2005-12-09

FileHelpers 1.1.4 Released

Change Log for version 1.1.4:

FIX: DataLink engine fail for File -> Access option.
FIX: CodeSmith templates generate bad Insert Statement.
MOD: Documentation of DataLinks
MOD: Enhaced Quoted String Support (now can discard blanks when trimming is enabled)
MOD: Refactored code aims to simplicity.
ADD: More and More NUnit Tests.
ADD: A better Demo Program for the Lib (for now only Easy and DataLink Examples)
ADD: NAnt build file, for clean, build, test and validate.

For a complete description of the lib go to: ... read more

Posted by Marcos Meli 2005-11-29

FileHelpers won the Second Prize on Larkware Contest

The File Helpers Library won the second prize on the Larkware Contest thanks to Mike, Roy and Eric.

Check the info at:

And now to enjoy the prizes

Greeting !!!

Posted by Marcos Meli 2005-11-29

FileHelpers 1.1 released

Later a minor adjustments on a lot of NUnit testing the library is completely redy and functional.

For a complete description of the lib go to:

Change Log from the version 1.1:

1.1 (11-Nov-2005)
ADD: FileHelperEngine.AppendToFile Method. (thanks Pierre)
ADD: IgnoreFirstAttribute to discard the n first lines of the files. (thanks Sam)
ADD: QuotedAttribute to mark the quoted fields in the files. (thanks jyjohnson)
ADD: A lot of more NUnit tests to check the new and old features.
ADD: .NET Compact Framework Support (thanks Pierre)
MOD: The Decimal, Double and Single converters now are Culture less and discard all the blanks before convert the number to allow (" - 10.3", "- 13 . 5", etc) ... read more

Posted by Marcos Meli 2005-11-17