卷曲欧元符号

时间:2015-01-30 16:26:08

标签: csv curl utf-8

我正在使用以下curl调用来编译csv文件格式远程服务器:

curl -H "Content-Type: text/csv; charset=utf-8"  ftp://user:password@ftp.url.com:21/file.csv | iconv -f iso8859-1 -t utf-8 > tmp.csv

当我检查tmp.csv文件时,欧元符号(€)显示为< 80>

检查服务器上的csv文件是否正确显示,因此我认为在卷曲过程中某些内容编码不正确。

谷歌搜索建议在我的通话中添加-H“Content-Type:text / csv; charset = utf-8”或iconv -f iso8859-1 -t utf-8,但这没有帮助。

帮助我stackoverflow你唯一的希望。

一个侧面问题,为什么€符号会导致很多编码问题?

1 个答案:

答案 0 :(得分:1)

我相信源文件包含字节0x80,它是ISO-8859-1中的控制字符和Windows 1252中的欧元符号。

当您使用ISO-8859-1作为输入编码调用iconv时,它将字节0x80视为代码点U + 0080,编辑器不显示,显示为矩形,或显示为<80>

您最有可能想要Windows 1252,它将字节0x80视为U + 20AC,即欧元符号:

curl ftp://user:password@ftp.url.com:21/file.csv | iconv -f cp1252 -t utf-8 > tmp.csv

顺便说一下,我删除的标题指定了请求的类型,而不是响应。请求是空的。