CSV library

Delphi and C++ Builder comma-separated values (CSV) library

Read and modify existing CSV files:
with TCsv.Create do
try
  LoadAnsiFile('C:\data.csv');
  ShowMessage(ToString);

  if (LineCount > 1) and (FieldCount[1] > 2) then
    Fields[1, 2] := 'New value';
  ShowMessage(ToString);
finally
  Free;
end;
								
Create new CSV files:
with TCsv.Create do
try
  LineCount := 10;
  for I := 0 to LineCount - 1 do
  begin
    FieldCount[I] := 3;
    for J := 0 to FieldCount[I] - 1 do
      Fields[I, J] := 'Field ' + IntToStr(I) + ' ' + IntToStr(J);
  end;

  ToUtf8File('C:\new.csv');
finally
  Free;
end;
								
Use fast TCsvWriter to create CSV file without in-memory overhead of TCsv class:
with TCsvWriter.Create('export.csv') do
try
  Write('Field 1 1');
  Write('Field 1 2');
  Write('Field 1 3');

  NextLine;

  Write('Field 2 1');
  Write('Field 2 2');
  Write('Field 2 3');

  NextLine;

  Write('Field 3 1');
  Write('Field 3 2');
  Write('Field 3 3');
finally
  Free;
end;
								
  • optimized for large data
  • selectable field separator
  • selectable CR/LF/CRLF output
  • selectable enclosing character
  • optional white space enclosing
  • optimized output, enclosing emitted "as needed"
  • WideString or Unicode fields
  • UTF8 and Ansi files supported
  • UTF8, AnsiString and WideString/UnicodeString data supported
  • lines with variable number of fields supported
  • insertion and deletion of lines and fields supported
  • supports Windows, macOS, iOS, Android and Linux
  • available for Delphi/C++ Builder 6 - 12 and Lazarus 3.0
  • source code included in registered version
  • royalty free distribution in applications

Download and order

Order CSV library $60 USD (license for one developer)
Order CSV multi-license $180 USD (license for all developers in company)
Order CSV year upgrades $30 USD (registered users only)
Order CSV year upgrades multi-license $90 USD (registered multi-license users only)

Related links