Mathematica 8 provides functions that allow developers to implement file format converters to be integrated with the Mathematica Import and Export framework. You can implement format converters and use Export to export data from customized formats.
The interface between Export and low-level converter functions is specified by (under the context). In essence, tells the Import and Export framework how to make various function calls when exporting Mathematica expressions to a file format.
Mathematica also includes source code for various converts. These are placed in the folders $InstallationDirectory/SystemFiles/Formats/format, where format is one of the following: BDF, DIF, MTP, SMILES, SurferGrid, TGF, or TLE. The registration code can be found in the files Import.m and/or Export.m, and the converter sources reside in the files Converter.m.
|ImportExport`RegisterExport["format",function]||register function to be used by the Export framework when exporting a file to the type format|
For this example, imagine a file format that encodes an ASCII string by each character's ASCII code, with each code separated by a single space. A converter function for this format can be added to the Import and Export framework using .
When you use Export[file.ext, "str", "MyExportFormat"], the framework passes both the output file name and the data, str, to the exporter, so an example exporter function can be written as below.
can now be used in Export just like any other file format.
Elements can be designated as options, meaning that they will always be passed to the converter functions along with all other options. Here is a trivial converter to illustrate the handling of elements and options.