buildCsv static method

String buildCsv(
  1. List columns,
  2. List<List> rows
)

RFC 4180 CSV from headers and row values. Does not prompt to save.

Implementation

static String buildCsv(List<dynamic> columns, List<List<dynamic>> rows) {
  final StringBuffer out = StringBuffer();
  out.writeln(columns.map(_csvField).join(','));
  for (final List<dynamic> row in rows) {
    final List<String> cells = List<String>.generate(columns.length, (int i) {
      if (i >= row.length) return _csvField('');
      return _csvField(row[i]);
    });
    out.writeln(cells.join(','));
  }
  return out.toString();
}