我需要将Excel文件导出为CSV导入到数据库中。我不能使用逗号,因为某些文本字段中有逗号。我尝试过的事情并不好用:
还有别的选择吗
55ooxyrt1#
使用逗号效果很好。从Excel导出到CSV时,文本中存在的逗号不被视为分隔符,因为它们被括在引号中。所有数据库导入实用程序现在都应该考虑到这一点。如果文本中没有逗号:1,2,3,4,this is text如果文本中有逗号:1,2,3,4,"this, is text"CSV导入不会将逗号视为包含在文本中的分隔符。
1,2,3,4,this is text
1,2,3,4,"this, is text"
qlckcl4x2#
您可以使用Excel的TEXTJOIN公式将所有列与特定的字符串(如管道)连接起来。下面列的示例:
的数据你可以使用下面的公式,上面每一行一个:=TEXTJOIN(“|“、A1、B1、C1、D1)=TEXTJOIN(“|“、A2、B2、C2、D2)结果将是:
的最后,您可以将此结果保存保存为文本文件。
dsekswqp3#
您应该用引号将所有字段括起来:“value 1”,“value,2”,“value3”
qrjkbowd4#
在Excel中打开xls或xlsx文件,保存为.ods格式(这一步避免了一些问题)。关闭Excel并使用Libreoffice打开ods文件,并保存为csv。它将允许您指定分隔字符 * 和 * offer将所有字段括在引号中。
的数据
4条答案
按热度按时间55ooxyrt1#
使用逗号效果很好。从Excel导出到CSV时,文本中存在的逗号不被视为分隔符,因为它们被括在引号中。所有数据库导入实用程序现在都应该考虑到这一点。
如果文本中没有逗号:
1,2,3,4,this is text
如果文本中有逗号:
1,2,3,4,"this, is text"
CSV导入不会将逗号视为包含在文本中的分隔符。
qlckcl4x2#
您可以使用Excel的TEXTJOIN公式将所有列与特定的字符串(如管道)连接起来。
下面列的示例:
的数据
你可以使用下面的公式,上面每一行一个:
=TEXTJOIN(“|“、A1、B1、C1、D1)
=TEXTJOIN(“|“、A2、B2、C2、D2)
结果将是:
的
最后,您可以将此结果保存保存为文本文件。
dsekswqp3#
您应该用引号将所有字段括起来:“value 1”,“value,2”,“value3”
qrjkbowd4#
在Excel中打开xls或xlsx文件,保存为.ods格式(这一步避免了一些问题)。关闭Excel并使用Libreoffice打开ods文件,并保存为csv。它将允许您指定分隔字符 * 和 * offer将所有字段括在引号中。
的数据