如何修改excel转换csv的分隔符
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何修改excel转换csv的分隔符相关的知识,希望对你有一定的参考价值。
有时候需要将excel转成csv格式的文件,可以通过另存为csv(逗号分隔)实现。但如果遇到某个单元格内容包含逗号,那么这个cvs文件将可能导致使用它的程序出错,这个时候我们需要另外的符号作为分隔符。打开控制面板-区域和语言选项,在区域选项卡上选择自定义,在自定义界面找到列表分隔符这一栏,默认为逗号(,),改成任意你想要的字符,点击确定完成修改。再试下另存为csv(逗号分隔),打开生成的cvs文件,发现分隔符变成了分号(;),证明修改成功。 参考技术A 你可以另存为txt文件,
保存时请在保存类型中选择文本文件(制表符分隔)
再起个文件名就可以了
使用逗号分隔符将单个 CSV 列批量转换为多个
【中文标题】使用逗号分隔符将单个 CSV 列批量转换为多个【英文标题】:Batch single CSV column to multiple with comma delimiter 【发布时间】:2021-02-18 06:19:45 【问题描述】:我希望创建一个批处理脚本,该脚本使用批处理脚本将文本合并并转换为 Excel 中的列。 我设法合并了 CSV 文件,以便它们创建一个只有一个标题的 CSV。存储的数据以逗号分隔,但我无法使用逗号分隔符将包含整个字符串的单列拆分为多个列。例如 "a,b,c" 应该在同一行 "a b c" 上变成三列
希望有人能帮忙。
到目前为止我的代码:
ECHO Set working directory
pushd %~dp0
ECHO Deleting existing combined file
del combined.csv
setlocal ENABLEDELAYEDEXPANSION
REM set count to 1
set cnt=1
REM for each file that matches *.csv
for %%i in (*.csv) do (
REM if count is 1 it's the first time running
if !cnt!==1 (
REM echo ^"sep=,^" >> combined.csv
REM push the entire file complete with header into combined.csv - this will also create combined.csv
for /f "delims=" %%j in ('type "%%i"') do echo %%j >> combined.csv
REM otherwise, make sure we're not working with the combined file and
) else if %%i NEQ combined.csv (
REM push the file without the header into combined.csv
for /f "skip=1 delims=" %%j in ('type "%%i"') do echo %%j >> combined.csv
)
REM increment count by 1
set /a cnt+=1
)
PAUSE```
【问题讨论】:
Powershell 可以正确地为您替换分隔符。您可以通过简单地在循环中执行foreach
来完成完整的powershell。做一个文件就像:powershell "Import-Csv .\test.csv -Delimiter
, | Export-Csv -delimiter "t" .\temp.csv -NoTypeInformation"
或在 for 循环中将其合并到批处理文件中。for %%i in (*.csv) do powershell....
【参考方案1】:
你只需要使用字符串替换,例如前面的分隔符是空格字符,
@echo off
set "str=a b c"
echo %str%
set "str=%str: =,%"
echo %str%
输出将是:
a,b,c
你为什么做这个? Excel 现在已经支持空格字符分隔。只需更改文件扩展名即可。
【讨论】:
你应该考虑csv
的值也可能有空格,所以"John Smith" "Harry Johnson"
不会变成"John Smith","Harry Johnson"
而是"John,Smith","Harry, Johnson"
数据已经用逗号分隔,但是 Excel 没有将数据分隔成几列
@Dlaurs20 你可以阅读这篇文章,How to open CSV with Excel 或者你可以使用这个免费软件nirsoft.net/utils/csv_file_view.html
遗憾的是,Excel 的不同本地化对“csv”使用不同的分隔符。也许this is helpful?以上是关于如何修改excel转换csv的分隔符的主要内容,如果未能解决你的问题,请参考以下文章