如何生成 CSV 文件? 记事本、Excel、Python 一键生成教程

CSV(逗号分隔值)是跨平台通用的数据交换格式,文件轻量化、全软件兼容,广泛用于数据归档、系统导入、机器学习数据集搭建、电商商品上架、客户信息录入等场景。本文整理了免代码手动创建、办公软件、Python 自动化三种免费生成 CSV 文件的方案,附带 Excel/JSON/PDF 三类常见数据源转 CSV 的实操技巧。

为什么使用 CSV 文件?

CSV 文件以纯文本形式存储表格数据,每行代表一条数据记录,每条记录中的字段以逗号分隔。

CSV 的核心优势:

  • 兼容性强:适配 Excel、在线表格、各类数据库、Python/R 编程语言;
  • 体积小巧:无多余排版格式,占用存储空间极低;
  • 免费通用:开源无版权,无需付费软件即可编辑导出

常见使用场景:

  • 向电商平台上传商品列表
  • 将销售联系人导入 CRM 系统
  • 数据备份或迁移
  • 为 Python(pandas 库)、R 语言或 SQL 数据库提供数据

方法1:使用文本编辑器手动创建

对于小型、简单的数据集(例如简短的姓名和邮箱列表),可以使用记事本(Windows 系统)等文本编辑器手动创建 CSV 文件。

注意:仅推荐十几条以内短数据,海量内容易出错。

手动创建 CSV 文件的步骤:

  1. 打开文本编辑器。
  2. 单行填写一组数据,字段用英文逗号隔开。示例:

记事本中的CSV数据

  1. 点击“文件” → “另存为”。
  2. 后缀命名为 .csv(例如data.csv),并将 “保存类型” 改为 “所有文件” → 保存。

“另存为”对话框中选择.csv扩展名和“所有文件”

处理特殊数据

如果某个字段自带逗号或换行符,需用双引号将其包裹。示例:

1
"张三,小李",zhangsan@xxx.com,"测试\n备注"

也可以打开现有 TXT 文本文件,按照步骤 3-4 将其另存为 CSV 文件。详细教程可参考:如何将 TXT 文本转换为 CSV 文件? 分享 3 种免费高效方法

方法2:借助 Excel 创建 CSV 文件

MS Excel 是创建 CSV 文件最常用的工具,遵循以下步骤,可避免格式错误,确保生成 CSV 文件的可读性。

步骤1:在 Excel 中整理数据

打开 Excel,将数据整理为行和列的形式。每列应有清晰的表头(例如“ID”、“姓名”、“邮箱”、“日期”),每行代表一条独立记录。

确保 CSV 兼容性的提示:

  • 移除合并单元格、清除筛选状态或条件格式(CSV 文件无法保留这些格式)。
  • 将公式转换为固定数值(参考:移除单元格公式但保留数据)。
  • 编号含前置 0 的列,将单元格格式设置为 “文本” 避免 0 丢失;

示例数据:

包含示例数据的Excel表格

步骤2:将文件另存为 CSV 格式

点击 “文件” → “另存为” → 选择保存位置。在 “保存类型” 下拉菜单中选择:

  • CSV UTF-8(逗号分隔)(*.csv):首选,完美兼容中英文、特殊符号;
  • CSV(逗号分隔)(*.csv):标准格式,特殊字符易乱码;

步骤3:命名文件并保存

为文件起一个描述性名称,点击 “保存”。Excel 会弹出警告提示部分功能(如格式)将丢失—— 直接点击 “是” 即可。

Excel提示保存为CSV时部分功能可能丢失

小贴士:欧洲地区常用分号分隔,提前修改系统区域设置再保存或直接在保存时指定分号作为分隔符。

方法3:通过 Python 自动生成 CSV 文件

处理大型数据集或需要自动化创建 CSV 文件(例如批量处理)时,Python 是强大的工具。借助 Free Spire.XLS for Python 免费库,可快速生成 CSV 文件,并自定义编码和分隔符。

步骤1:安装免费的 Python 库

开始前,打开命令提示符或终端,运行以下命令:

1
pip install Spire.XLS.Free

步骤2:编写 Python 代码生成 CSV 文件

创建新的 Python 文件,添加以下代码。此示例从零开始创建包含静态数据的 CSV 文件:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
from spire.xls import *
from spire.xls.common import *

# 1. 创建新的工作簿
workbook = Workbook()

# 2. 获取第一个工作表
worksheet = workbook.Worksheets[0]

# 3. 向单元格填充数据
# 表头行
worksheet.Range["A1"].Text = "产品"
worksheet.Range["B1"].Text = "价格"
worksheet.Range["C1"].Text = "数量"

worksheet.Range["A2"].Text = "无线耳机"
worksheet.Range["B2"].NumberValue = 79.99
worksheet.Range["C2"].NumberValue = 250

worksheet.Range["A3"].Text = "蓝牙音箱"
worksheet.Range["B3"].NumberValue = 49.99
worksheet.Range["C3"].NumberValue = 180

# 4. 将工作表保存为CSV格式
worksheet.SaveToFile("基础文档.csv", ",", Encoding.get_UTF8())
workbook.Dispose()

在 Excel 中打开生成的 CSV 文件:

使用Python和免费的Spire.XLS生成CSV文件

Free Spire.XLS 进阶示例

自定义分隔符和编码

1
2
3
4
5
6
7
8
# 使用分号作为分隔符保存(适用于欧洲系统)
worksheet.SaveToFile("output.csv", ";", Encoding.get_UTF8())

# 使用制表符作为分隔符保存
worksheet.SaveToFile("output.csv", "\t", Encoding.get_UTF8())

# 使用Unicode编码保存
worksheet.SaveToFile("output.csv", ",", Encoding.get_Unicode())

将现有 Excel 文件导出为 CSV:

1
2
3
4
5
6
7
from spire.xls import *

workbook = Workbook()
workbook.LoadFromFile("input.xlsx")
worksheet = workbook.Worksheets[0]
worksheet.SaveToFile("output.csv", ",", Encoding.get_UTF8())
workbook.Dispose()

C# 开发者可参考通过 C# 创建 CSV 文件(从零构建、列表映射、Excel 转换)

拓展:从不同数据源生成 CSV 文件

CSV 文件几乎可从任意数据源创建,以下是最常见的场景。

Excel 转 CSV

  • 方法A:在 Excel 中打开文件 → 另存为 → CSV(参考方法2)。
  • 方法B:使用方法3中介绍的 Free Spire.XLS for Python 库 — 加载 Excel 文件并调用 SaveToFile 方法。

JSON 转 CSV

JSON 是 Web API 的标准格式,将其转换为 CSV 后,可在电子表格或数据库中分析数据。

  • 完整教程将 JSON 转换为 CSV — 包含 Python 示例、使用 MS Excel 和在线转换工具的方法。

PDF 表格转 CSV

PDF 适合打印,但不利于处理结构化数据。如需将表格提取为 CSV 格式,可采用以下方式:

  • Adobe Acrobat Pro:打开 PDF → 导出 → 电子表格 → 另存为 CSV。
  • 在线转换工具:上传 PDF 文件,然后下载 CSV 格式文件。
  • Python 库(Spire.PDF):自动提取 PDF 所有页面的表格并导出为 CSV。

完整教程可参考:PDF 表格转 CSV:手动、在线与自动化实现方法

总结

无论你的技能水平如何,也无论你手头有哪些工具,生成 CSV 文件的操作都十分简单。无需任何付费软件,仅在 Excel 表格中点击几下、编写几行 Python 代码,甚至使用纯文本编辑器,都能完成这项工作。

为了帮助你快速选择合适的方法,以下是方案选型速查表:

方法 适用场景 难度
文本编辑器 零星少量数据 ★ 入门级
Excel 已有电子表格、偶尔使用 ★ 入门级
Python + Free Spire.XLS 大型数据、自动化处理、跨平台 ★★ 进阶级

最佳方法取决于你的即时需求:数据量、技能水平或是否需要自动化。无论选择哪种方式,最终都能得到一份格式规范、可在任意平台无缝使用的 CSV 文件。

关于创建 CSV 文件的常见问题

问:CSV 和 Excel 文件有什么区别?

:CSV 文件是包含逗号分隔值的纯文本文件(无格式/公式),而 Excel 文件是二进制文件,可存储格式、图表和公式。CSV 文件体积更小、兼容性更强,Excel 则更适合复杂的数据分析。

问:CSV 文件中可以包含多个工作表吗?

:不可以。CSV 是纯文本格式,无工作表概念,仅能存储单张表格的扁平化数据。如需多工作表,需为每个工作表创建单独的 CSV 文件,或转换为 Excel(XLSX)格式。

问:可以使用逗号以外的自定义分隔符(分号、制表符)吗?

:可以。在 Excel 表格中保存时选择分隔格式即可;在 Python 中,可在 SaveToFile 方法中设置分隔符。

问:可以免费在线创建 CSV 文件吗?

:可以使用 ConvertCSV、TableConvert 等在线 CSV 生成工具。但请注意,避免上传敏感数据。

相关链接