Data import fails in Crystal Reports when loading CSV files with special characters

We’re having issues importing CSV files into Crystal Reports 2016 when the data contains special characters like accented letters (é, ñ, ü) and currency symbols (€, £). The import process completes but the special characters either appear as question marks or cause incomplete data rows.

We’ve tried both direct CSV import and ODBC connection methods. Here’s what we’re seeing:


Original CSV: "José García", "€1,250.00"
Imported Result: "Jos? Garc?a", "?1,250.00"

The CSV files are generated from our ERP system and encoded in UTF-8. When we open them in Excel, everything displays correctly. But Crystal Reports seems to have trouble with the Unicode/ANSI data handling. We need these reports to support international customer names and multi-currency transactions.

Has anyone dealt with CSV encoding compatibility issues in Crystal Reports 2016? What’s the proper way to configure ODBC Unicode support for this scenario?

For Crystal Reports 2016, you need to use the “Microsoft Access Text Driver” with Unicode support enabled, not the legacy text driver. In ODBC Administrator, when you create the DSN, there should be an option for “Use Unicode” or similar. Also, consider converting your CSV to a database table first if this is a recurring issue. We had similar problems and ended up creating a staging process that loads CSVs into a SQL Server table with proper UTF-8 collation, then Crystal Reports connects to that table instead. It’s more reliable for production environments.

Another approach is to use the Crystal Reports SDK to programmatically handle the import with proper encoding specifications. We built a small utility that preprocesses CSV files before Crystal Reports touches them. It converts encoding and validates special characters. Might be overkill for your use case, but it gives you full control over the data pipeline.

Thanks for the suggestions. I checked the ODBC driver and we’re currently using the standard Microsoft Text Driver. Should I switch to a specific Unicode driver? Also, I’m not sure where to find the regional settings in Crystal Reports - could you point me in the right direction?

I ran into this same CSV encoding compatibility issue last year and here’s the complete solution that worked:

1. CSV Encoding Compatibility: First, ensure your CSV files are saved with UTF-8 BOM encoding. The BOM header tells Crystal Reports explicitly that the file is UTF-8. Most ERP systems have an export option for this. If not, you can batch convert files using a script.

2. Unicode/ANSI Data Handling: Crystal Reports 2016 requires proper ODBC configuration for Unicode support. Here’s the fix:


// ODBC DSN Configuration (use odbcad32.exe)
Driver: Microsoft Access Text Driver (*.txt, *.csv)
Options: Enable "Use Unicode" checkbox
Format: Set to "CSV Delimited"

3. ODBC Unicode Support Setup: In Windows ODBC Data Source Administrator:

  • Create new System DSN (not User DSN)
  • Select “Microsoft Access Text Driver”
  • Click “Options” and check “Use Unicode”
  • Under “Select Directory”, point to your CSV folder
  • Click “Define Format” and specify CSV format with UTF-8

Alternative Solution: If ODBC configuration doesn’t resolve it, create a simple ETL process:


// Pseudocode - CSV preprocessing steps:
1. Read CSV file with explicit UTF-8 encoding
2. Validate and normalize special characters
3. Convert to database staging table with NVARCHAR columns
4. Point Crystal Reports to staging table instead of CSV
5. Schedule preprocessing before report generation
// This ensures consistent Unicode/ANSI data handling

Testing: After configuration, test with a sample file containing: é, ñ, ü, €, £, ¥, ©, ®. All should display correctly. If you still see question marks, the ODBC driver might not support Unicode - in that case, upgrade to a newer ODBC driver version or use the staging table approach.

The key is understanding that Crystal Reports 2016’s direct CSV import has limited Unicode/ANSI data handling capabilities. The ODBC Unicode support configuration is essential for proper special character processing. Let me know if you need help with the specific ODBC settings for your Windows version.

Adding to Sarah’s point - you might also want to verify the BOM (Byte Order Mark) in your CSV files. UTF-8 files without BOM can sometimes cause encoding detection issues. Try saving your CSV with UTF-8 BOM encoding from your ERP export settings. Also, have you checked the regional settings in Crystal Reports? Sometimes the locale settings affect how special characters are interpreted during import.