Build 4.0.0.30 of xlsgen adds another option when importing CSV files, which is to override the automatic data type discovery in favor of a predefined data type.
In the sample below, the CSV content is imported as strings.
engine->Workbooks->CSVImportOptions->ForceDataType = xlsgen::datatype_string;
xlsgen::IXlsWorkbookPtr wbk = engine->Open( L"input.csv", L"output.xlsx" );
xlsgen::IXlsWorksheetPtr wksht = wbk->WorksheetByIndex[1];
WCHAR sDimensions[128];
swprintf(sDimensions, L"R%dC%d:R%dC%d",
wksht->Dimensions->FirstRow,
wksht->Dimensions->FirstColumn,
wksht->Dimensions->LastRow,
wksht->Dimensions->LastColumn);
wksht->Columns[sDimensions]->AutoFit = TRUE;
wbk->Close();