输出数据到CSV文件

这篇博客介绍了如何在C#中使用静态类File的便捷函数,如WriteAllLines和AppendAllText,来轻松地将数据输出到CSV文件。作者强调了不同函数在新建和追加文件操作上的区别,并指出在写入CSV文件时,如何处理逗号和换行符。此外,还提到在写入前需要检查文件是否存在,如果不存在则创建并写入列标题。
摘要由CSDN通过智能技术生成
最近由于公司业务需要,写了这个函数,用于将线程中不断得到的数据输出到**CSV**文件中。

查阅过一些其他博客,基本都是用文件流FileStream结合写入流StreamWriter来做的,做完需要自己手动关闭句柄(代码注释部分),不过C#静态类File有封装一些函数,可以用完自己就关闭了,如AppendAllLines、AppendAllText、WriteAllLines、WriteAllText等等,函数还挺多的。其中Write开头的是新建文件写入,Append开头的是添加到文件末尾,计算机的都懂的~
其中CSV文件,下一格用逗号,换行用”\n",直接写入即可。另外写入之前判断文件是否存在,不存在则先写入列标题

代码如下:

private void SaveCSVFile()
        {
   
            if (ReportWindow.ui.checkBox_SaveCSVFile == false)
                return;

            var namespaceName = System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Namespace;
            var csvFilePath   = this.reportDirectory + namespaceName + "Report.csv";
            //FileStream fs = null;
            //StreamWriter sw = null;
            #region 测试,此方法可以获取一个类里面的所有属性,同理也有可以获取所有方法信息的函数 GetMethods(),属性和方法一起获取的则为GetMembers()
            //Type t = typeof(CenterTest.ReportOperation);
            //foreach (System.Reflection.Prop
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Spring Boot应用程序中导出数据CSV文件,需要执行以下步骤: 1.添加CSV依赖项 在pom.xml文件中添加以下依赖项: ``` <dependency> <groupId>com.opencsv</groupId> <artifactId>opencsv</artifactId> <version>5.2</version> </dependency> ``` 2.创建CSVWriter 使用CSVWriter类将数据写入CSV文件。在Spring Boot应用程序中,可以使用以下代码创建一个CSVWriter: ``` CSVWriter writer = new CSVWriter(new FileWriter("data.csv")); ``` 3.将数据写入CSV文件 使用CSVWriter的writeNext方法将数据写入CSV文件。例如,以下代码将一行数据写入CSV文件: ``` String[] data = {"John", "Doe", "john.doe@example.com"}; writer.writeNext(data); ``` 4.关闭CSVWriter 最后,关闭CSVWriter以确保所有数据都已写入CSV文件: ``` writer.close(); ``` 完整示例: ``` @GetMapping("/export") public void exportToCSV(HttpServletResponse response) throws IOException { response.setContentType("text/csv"); response.setHeader(HttpHeaders.CONTENT_DISPOSITION, "attachment; filename=\"data.csv\""); CSVWriter writer = new CSVWriter(new FileWriter("data.csv")); String[] header = {"First Name", "Last Name", "Email"}; writer.writeNext(header); List<User> users = userService.getAllUsers(); for (User user : users) { String[] data = {user.getFirstName(), user.getLastName(), user.getEmail()}; writer.writeNext(data); } writer.close(); } ``` 此代码块将从UserService中获取所有用户,将其写入CSV文件并将其下载到用户的计算机上。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值