perl – CSV格式不正确?

前端之家收集整理的这篇文章主要介绍了perl – CSV格式不正确?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在Power shell生成带有EXPORT-CSV的CSV,然后将其提供给Perl脚本.但Perl无法导入该文件.

我已经针对工作版本(已经从相同的Perl脚本而不是PowerShell导出)验证了CSV文件,并且没有区别. coloumns完全相同,它们都有分号作为分隔符.如果我在Excel中打开文件,但所有内容都会在每行的第一个单元格中结束(这意味着我必须进行文本到颜色).工作文件从一开始就在不同的单元格中结束.

更令人困惑的是:当我在记事本中打开文件并将内容复制/粘贴到新文件时,导入工作正常!

那么,我错过了什么?是否有“隐藏”属性,我无法用记事本发现?我是否必须更改编码类型?

请帮忙:)

解决方法

要更好地查看CSV文件,请尝试使用 Notepad++.这将告诉您状态栏中的文件编码.同时打开隐藏的字符(查看>显示符号>显示所有字符).这将显示是否只有换行符,或回车换行符,制表符与空格等…您还可以从“编码”菜单更改文件编码.这可以帮助您识别差异.记事本不显示任何此类信息.

更新 – 以下是如何在代码中将文本文件从Windows转换为Unix格式:

$allText = [IO.File]::ReadAllText("C:\test.csv") -replace "`r`n?","`n" 
$encoding = New-Object System.Text.ASCIIEncoding    
[IO.File]::WriteAllText("C:\test2.csv",$allText,$encoding)

或者您可以使用记事本(编辑> EOL转换> Unix格式).

猜你在找的Perl相关文章