C#控制台应用程序生成CSV

本文关键字:CSV 程序生成 应用 控制台 | 更新日期: 2024-06-14 01:06:29

我有一个函数,它返回一个File。该文件由一个字符串创建,如下所示:

return File(System.Text.Encoding.Default.GetBytes(data.getCSV()),"Text.csv","Report.csv");

如何将此文件生成为文件夹中的.csv文件?

C#控制台应用程序生成CSV

根据您对File()方法的使用,您似乎在控制台应用程序中使用了(Api)Controller。不要这样做。将业务逻辑放入类库:

public byte[] GenerateCsv()
{
    // ...
    return System.Text.Encoding.Default.GetBytes(data.getCSV());
}

然后你可以做这样的事情:

var csvData = BusinessLogic.GenerateCsv();
System.IO.File.WriteAllBytes("Report.csv", csvData);

与您的(Api)Controller:相同

var csvData = BusinessLogic.GenerateCsv();
return File(csvData, "text/csv", "Report.csv");
var directory = Directory.GetCurrentDirectory(); // assuming that the folder you are looking for is the project directory.
using(var fs = new FileStream(directory +  fileName + extension))
{
   using(var sw = new StreamWriter(fs))
   {
       //use sw to write in the appropriate way.
   }
}

也许你指的是

string path = System.Reflection.Assembly.GetExecutingAssembly().CodeBase;

你可以获取文件夹的路径,然后在这个文件夹中找到csv文件,然后覆盖它(或者做其他事情)。