是否有用于在CSV的所有元素周围添加双引号的工具?

Tom*_*ard 0 csv

我有一个CSV文件,我想将其视为源代码.基本上我想采用csv行并使用它们,就像它们调用具有所有字符串参数的函数一样.

问题是,当文本中有逗号时,单个元素仅被双引号.

是否有一种快速方法可以在csv行中添加双引号的所有元素.

原始文档是一个excel文件,因此excel中的任何内容都可以,但欢迎其他快速工具.

Hex*_*gon 5

尝试使用以下Python脚本,只是为了好玩.
它会在CSV中添加引号,但不包含它们.

这是一个非常简单的方法 - 您可能会发现不适合您的极端情况(带有嵌入式引号和逗号的字符串?).修理它!

(哦,这可以用更少的代码行编写,我知道.这不是重点).

import sys
import re

def addQuotes( str ):
    matches = re.match( '^".*"$', str )
    if matches == None:
        return '"' + str + '"'
    return str

# Iterate over standard input. NOTE - this isn't line-buffered, don't try using
# this script interactively...
for line in sys.stdin:

    # Remove trailing linefeed.
    line = line.strip()

    # Split the line into parts separated by commas.
    parts = line.split( ',' )

    # Add quotes to each part that doesn't have quotes already.
    newParts = map( addQuotes, parts )

    # Concatenate the parts back to a single line.
    concatParts = ','.join( newParts )

    # And print it.
    print concatParts
Run Code Online (Sandbox Code Playgroud)

使用类似的方法将CSV文件传输到此文件

 python QuoteCSV.py < input.csv
Run Code Online (Sandbox Code Playgroud)