C#保存CSV的逗号表达式,其中逗号是中文格式还是英文格式?

在C#中保存CSV文件时,用来分隔字段的逗号应该是英文逗号(,),而不是中文逗号()。CSV(Comma-Separated Values,逗号分隔值)是一种通用的、简单的文件格式,它使用英文逗号作为字段值之间的分隔符。当字段内容中本身包含英文逗号时,应该将该字段用双引号(")包围起来,以确保正确解析。

例如,如果某个字段值是New York, NY,在CSV文件中应表示为 "New York, NY"。这样,阅读CSV文件的程序会知道这个双引号内的内容是一个整体,即使它内部包含逗号。

下面是一个简化的C#示例代码,展示如何处理含有逗号的字段值并保存为CSV格式:

cs 复制代码
using System;
using System.IO;

class Program
{
    static void Main()
    {
        string filePath = "example.csv";
        using (StreamWriter sw = new StreamWriter(filePath, false, System.Text.Encoding.UTF8))
        {
            // 假设我们有如下数据,其中第三个字段包含逗号
            string[] row = { "张三", "工程师", "北京,朝阳区", "28" };
            
            // 写入标题行,假设没有特殊字符,这里简化处理未加双引号
            sw.WriteLine("姓名,职位,地址,年龄");
            
            // 处理数据行,对含有逗号的字段加上双引号
            for (int i = 0; i < row.Length; i++)
            {
                sw.Write(row[i].Contains(",") ? $"\"{row[i]}\"" : row[i]);
                if (i < row.Length - 1) sw.Write(",");
            }
            sw.WriteLine(); // 换行
            
            // 重复以上步骤以写入更多行...
        }
        
        Console.WriteLine("CSV文件已成功保存!");
    }
}

这段代码中,如果字段值中包含逗号,则在该值前后添加双引号,确保CSV格式的正确性。同时,使用System.Text.Encoding.UTF8来指定文件的编码,确保兼容性和跨平台的可读性。

相关推荐
阿里嘎多学长4 小时前
2026-04-30 GitHub 热点项目精选
开发语言·程序员·github·代码托管
叶小鸡5 小时前
Java 篇-项目实战-苍穹外卖-笔记汇总
java·开发语言·笔记
AI人工智能+电脑小能手5 小时前
【大白话说Java面试题】【Java基础篇】第22题:HashMap 和 HashSet 有哪些区别
java·开发语言·哈希算法·散列表·hash
时空系6 小时前
第10篇:继承扩展——面向对象编程进阶 python中文编程
开发语言·python·ai编程
CHANG_THE_WORLD7 小时前
python 批量终止进程exe
开发语言·python
古城小栈7 小时前
从 cargo-whero 库中,找到提升 rust 的契机
开发语言·后端·rust
Gary Studio8 小时前
安卓HAL C++基础-智能指针
开发语言·c++
啧不应该啊9 小时前
Day1 Python 与 C 的类型区别
c语言·开发语言
cen__y9 小时前
Linux07(信号01)
linux·运维·服务器·c语言·开发语言
xingpanvip9 小时前
星盘接口开发文档:星相日历接口指南
android·开发语言·前端·css·php·lua