2016-10-11 36 views
0

我有一个CSV文件,它使用分号定界符,并编码为UTF-8(无标记)。导入CSV返回空

预期以下工作:

$fn = '\\path\to\file.csv' 
ConvertFrom-Csv -Delimiter ';' -InputObject (get-content $fn -Encoding UTF8) 

但简单的表达式返回空值:

$fn = '\\path\to\file.csv' 
import-csv $fn -Delimiter ';' -Encoding UTF8 

有没有人见过这种行为/有什么想法?

回答

0

问题在于输入文件的行尾字符。

在程序员记事本中查看文件我能够查看line end markers

它们是carriage return(即MAC对行结束的偏好)。

将这些替换为Windows的样式结尾,carriage return + line feed,import-csv按预期工作。