Flutter 如何添加头CSV文件颤振?

Flutter 如何添加头CSV文件颤振?,flutter,flutter-dependencies,Flutter,Flutter Dependencies,我想为CSV文件中的列添加标题。我正在使用CSV lib 4.0.4版和我的代码: List<List<dynamic>> rows = List<List<dynamic>>(); for (int i = 0; i <rootAttendanceList.length;i++) { List<dynamic> row = List(); row.add(rootAttendanceList[

我想为CSV文件中的列添加标题。我正在使用CSV lib 4.0.4版和我的代码:

  List<List<dynamic>> rows = List<List<dynamic>>();
    for (int i = 0; i <rootAttendanceList.length;i++) {
      List<dynamic> row = List();
      row.add(rootAttendanceList[i].name);
      row.add(rootAttendanceList[i].company);
      rows.add(row);
    }
    String dir = (await getApplicationDocumentsDirectory()).absolute.path;
    String  file = "$dir";
    File f = new File(file+"/myreport.csv");
    String csv = const ListToCsvConverter().convert(rows);
    f.writeAsString(csv);
    print(f.path);
List rows=List();

对于(int i=0;i,CSV文件的结构基本如下:

Title1,Title2,Title3 (represent headers)
one,two,three (represent 1st row)
example1,example2,example3 (represent 2nd row)
在您的代码中,csv是使用函数ListTocsConverter()检索的字符串。现在您只需要在这里为字符串csv添加一个包含头的字符串。 假设你的标题是姓名、地址、国家,那么你的代码是这样的

String header = "name,address,country";
String csv = const ListToCsvConverter().convert(rows);
f.writeAsString(csv);
print(f.path);
但在CSV文件字符串中可以看到,每一行都有行尾,每一条记录都用“,”符号分隔。因此,您必须使用ListToCsvConverter()函数的参数“fieldDelimiter”和“eol”告诉它这两个参数。 下面是最后一段代码,它将endofline(eol)添加到我们的头字符串中,并将参数传递给函数

String header = "name,address,country\n";
String csv = const ListToCsvConverter(
  fieldDelimiter: ",",
  eol: "\n"
).convert(rows);
f.writeAsString(csv);
print(f.path);
我希望这能帮助你和其他面临同样问题的人。我知道会有很多打字错误,但我希望你理解我解释的概念。为了更清楚,你可以检查我的代码。只需通过函数backupDB()

请让我知道,如果我错了一些地方,并帮助我纠正它。谢谢你给我时间来解决我的问题。祝你有美好的一天

String header = "name,address,country\n";
String csv = const ListToCsvConverter(
  fieldDelimiter: ",",
  eol: "\n"
).convert(rows);
f.writeAsString(csv);
print(f.path);