Saturday, July 7, 2007

thumbnail

FileHelpers v 2.0

The FileHelpers are a free and easy to use .NET library to import/export data from fixed length or delimited records in files, strings or streams.

The idea is pretty simple:

You can strong type your flat file (fixed or delimited) simply describing a class that maps to each record and later read/write your file as an strong typed .NET array

The Library also has support for import/export data from differents storages like Excel, Access, SqlServer, etc.

Start to use the FileHelper right now:

Who needs the File Helpers Library ?

In almost every project there is a need to read/write data from/to a file of a specified format.

For example for log parsing, data warehouse and OLAP applications, communication between systems, file format transformations (for example from a fixed length to a CSV file).

This library aims to provide an easy and reliable way to accomplish this task.

Main Features

Easy to use: The FileHelpers Lib is straight forward to learn and use. (see EasyExample)
Auto Converters: The library has a set of converters for the basic types and can be easy extended to provide custom converters. (see ConverterBase and Converter Example)
RunTime Classes from the version 1.6.0 you can create you record class at run time, load them from files with source code or an Xml description (check the example)
High Performance: From the version 2.0 the library dont use any more reflection to get or set the field values, now we are using dynamic code generation (MSIL) and delegates
Master-Detail: You can read and write records with a master/detail pattern. (see Example1 and Example2)
Multiple record format support: With the MultirecordEngine you can read files with different record layout, you can also read files with some delimited and some fixed length records. (see Example)
Event Support: The engines of the library contain some events to make you easy to extend the behavior of the library (see Example)
Ms Excel Storage: Are a way to extract / insert records between any source and an excel file. (see ExcelDataStorage and ExcelDataLinkExample)
DataLinks: Are a way to extract / insert records between a database and a file. (see DataStorage and FileDataLinkExample)
GenericDataLink: Now you can to copy records between two Data Storages (see GenericDataLink and DataStorage)
Asynchronous Mode: You can use the library to read line by line and not the whole file. (see Async Methods)
.NET Compact Framework Support From the version 1.1 you can use the FileHelpers library for you PocketPC and WindowsCE developments. (thanks Pierre)
File Transform Engine: to convert files in one format to another (for example a file with CSV to a FixedLength record format) (check the example)
Progress Notification: to get notified of the progress in each operation in the library (check the example)
.NET 2.0 Generics: the cast less and strong typed version of the engines (check the example)
.NET 2.0 Nullable Types now the library supports Nullable types in his core (check the example)

FileDiffEngine to allow compare files with the same record layout (check the example)

Others Features

Files, Stream and String Support: You can use the library to read/write any stream or string, not only files. (see FileHelperEngine)
Different Error Behaviors: You can set the behavior of the library when an error is found (throw and exception, ignore, save and continue, etc) (see the examples)
Quoted String Support It allows to indicates that the field must be read and written as Quoted String, like Excel CSV. (see FieldQuotedAttribute )
Data Table Operations: The library supports to direct read a file to a datatable rather than an array
CommonEngine a easy way to access to common operations (check the example)
Encoding Aware : You can define the encoding used to read and write files or streams. (see BaseEngine.Encoding)
NullValues : The library identifies the null values in the files and assign an adequate value. (see FieldNullValueAttribute)
Good Documentation : The library is fully documented, al least is the intention =) and with a lot of Examples of Use.
Align and Trimming: You can set the processing mode of the in/out strings with a lot of attributes like the FieldAlignAttribute and the FieldTrimAttribute.

Tags :

Subscribe by Email

Follow Updates Articles from This Blog via Email

No Comments