![如何将 Excel 中的空白字段“NULL”写入 CSV](https://linux22.com/image/1305028/%E5%A6%82%E4%BD%95%E5%B0%86%20Excel%20%E4%B8%AD%E7%9A%84%E7%A9%BA%E7%99%BD%E5%AD%97%E6%AE%B5%E2%80%9CNULL%E2%80%9D%E5%86%99%E5%85%A5%20CSV.png)
当我从 Excel 2007 导出 CSV 文件时,如何将空白字段写入“NULL”?是否有此功能可以执行此操作?
答案1
在导出时,我认为这可能不可行。
但您也可以在保存之前或保存之后尝试这种方法
1. Click F5
2. Click Special
3. Select Blanks
4. Click OK
5. Type NULL
6. Press CTRL + Enter
或者
使用宏,VB代码:
Sheet1.UsedRange.SpecialCells(xlCellTypeBlanks)="NULL"
答案2
简短的回答:你什么也不做。
对于导出 CSV 而言,Excel 单元格中含有空字符串和没有值 (null) 没有任何区别。CSV 文件中的字段实际上没有数据类型。因此,无论哪种方式,CSV 文件中的字段都是空的。示例:
将生成包含以下内容的 CSV:
12,,54
两个分隔符(逗号)之间的任何内容都表示为空或 null。如何处理空值取决于读取 CSV 文件的软件。
答案3
在文本编辑器(如记事本)中打开 CSV 文件,然后执行“查找/替换所有,,
=> ” ,NULL,
。 它不在 Excel 中,但仍可工作。
答案4
我不懂 Excel,但这个 Python 脚本可以做到
import csv,sys
fin = open(sys.argv[1],'rb')
fout = open(sys.argv[2],'wb')
reader = csv.reader(fin, delimiter=',', quotechar='"')
writer = csv.writer(fout, delimiter=',', quotechar='"', quoting=csv.QUOTE_MINIMAL)
for row in reader:
new = []
for s in row:
if s=='':
new.append('null')
else:
new.append(s)
writer.writerow(new)
fin.close()
fout.close()