时间戳转换器

在 iso-8859-1 中重新编码 utf8..cp1250 结果

日期:2023-02-24     浏览:277    
【中文标题】在 iso-8859-1 中重新编码 utf8..cp1250 结果【英文标题】:Recode utf8..cp1250 outcome in iso-8859-1 【发布时间】:2016-05-05 12:33:14 【问题描述】:

我的 CSV 文件似乎以 UTF-8 正确编码。

   iconv -f UTF-8 file.csv -o /dev/null  # returns 0

当我尝试将文件重新编码为 cp1250(尝试重新编码/iconv 甚至 Perl)时,生成的文件以 iso-8859-1 编码 - 至少根据

   file -i resulting_file.csv
   resulting_file.csv: text/plain; charset=iso-8859-1

服务器上的区域设置是

   LANG=en_US.UTF-8
   LC_CTYPE="en_US.UTF-8"
   LC_NUMERIC="en_US.UTF-8"
   LC_TIME="en_US.UTF-8"
   LC_COLLATE="en_US.UTF-8"
   LC_MONETARY="en_US.UTF-8"
   LC_MESSAGES="en_US.UTF-8"
   LC_PAPER="en_US.UTF-8"
   LC_NAME="en_US.UTF-8"
   LC_ADDRESS="en_US.UTF-8"
   LC_TELEPHONE="en_US.UTF-8"
   LC_MEASUREMENT="en_US.UTF-8"
   LC_IDENTIFICATION="en_US.UTF-8"
   LC_ALL=

我不知道为什么。任何帮助表示赞赏,谢谢。

【问题讨论】:

【参考方案1】:

Iso-8895-1、iso-8895-15 和 Windows-1252 (CodePage1252) 字符集非常相似,只有少数字符和/或位置不同。例如,iso-8895-1 没有欧元 (€) 符号。 Windows-1252 和 -15 可以,但它映射到不同的字节。

file 使用“魔术”查找来猜测编码。如果文本中不存在使这些字符集不同的字符,则file 无法区分这三者。

听起来您确实有一些非 ASCII 拉丁字符,但不足以让 file 知道任何区别。

不过,您可以高枕无忧 - 您的文件与 Windows-1252 编码兼容。

【讨论】:

你说得对,我的 CSV 包含几个捷克字符。当我强制 emacs 在 cp1250 中打开文件时,它看起来是正确的。我在 Linux 中处理过很多文本文件,但这是我的第一个检测错误的案例(我不是在谈论格式错误的文件)。谢谢你的答案。

相关文章

如何使用编码 ISO-8859-1 在 PHP 中编写文件? [复制]

{】如何使用编码ISO-8859-1在PHP中编写文件?[复制]【英文标题】:HowcaniwriteafileinPHPwithencodeISO-8859-1?[duplicate]【发布时间】:2016-11-0419:00:54【问题描述】:如何使用编码ISO-8859-1的PHP编写文件?我正在使用函数$file=fopen("file.txt","a");创...}

Python ISO-8859-1 编码

{】PythonISO-8859-1编码【英文标题】:PythonISO-8859-1encoding【发布时间】:2011-12-2723:18:57【问题描述】:在处理ISO-8859-1/Latin-1字符集时,我在Python中遇到了一个巨大的编码问题。当使用os.listdir获取文件夹的内容时,我得到了以ISO-8859-1...}

在 Python 中使用 ISO 8859-1 编码字符

{】在Python中使用ISO8859-1编码字符【英文标题】:EncodingcharacterswithISO8859-1inPython【发布时间】:2015-08-2016:45:49【问题描述】:使用ord(ch),您可以获得字符ch到127的数字代码。是否有任何函数可以返回0-255之间的数字,因此还要涵盖I...}

.Net Core 3.1:不支持文本消息格式中使用的文本编码“iso-8859-1”。 (参数“编码”)

{】.NetCore3.1:不支持文本消息格式中使用的文本编码“iso-8859-1”。(参数“编码”)【英文标题】:.NetCore3.1:Thetextencoding\'iso-8859-1\'usedinthetextmessageformatisnotsupported.(Parameter\'encoding\')【发布时间】:2020-08-2002:35:12【问题描述】:我...}

Windows 上的 UTF-8/ISO-8859-1 编码问题 --> Unix

{】Windows上的UTF-8/ISO-8859-1编码问题-->Unix【英文标题】:ProblemswithUTF-8/ISO-8859-1encodingonWindows-->Unix【发布时间】:2012-09-0419:41:19【问题描述】:我编写了一个程序来处理瑞典字母åä和ö。我在一台Windows计算机上编写了它,并且...}

Apache 的默认编码是 ISO-8859-1 但网站是 UTF-8?

{】Apache的默认编码是ISO-8859-1但网站是UTF-8?【英文标题】:Apache\'sdefaultencodingisISO-8859-1butwebsitesareUTF-8?【发布时间】:2014-02-2020:09:21【问题描述】:我必须第一次处理编码,我对PHP、Apache和浏览器如何处理编码感到困惑。PHP和Apac...}

如何使用正确的字符编码在 jQueryMobile 1.3.1 中通过 AJAX 加载 ISO-8859-1 内容?

{】如何使用正确的字符编码在jQueryMobile1.3.1中通过AJAX加载ISO-8859-1内容?【英文标题】:HowtoloadISO-8859-1contentviaAJAXinjQueryMobile1.3.1withcorrectcharacterencoding?【发布时间】:2013-04-2618:16:02【问题描述】:我有一个生成ISO-8859-1内容的PHP脚...}

代码内的 jQuery ISO-8859-1 编码

{】代码内的jQueryISO-8859-1编码【英文标题】:jQueryISO-8859-1encodinginsidethecode【发布时间】:2013-08-2118:07:21【问题描述】:我知道jQuery编码问题已经被广泛讨论,并且网上有很多关于它的内容,但是我有一个问题我找不到直接的解决...}

UTF-8 编码从 Spring 服务器加载为 ISO-8859-1

{】UTF-8编码从Spring服务器加载为ISO-8859-1【英文标题】:UTF-8encodingloadsasISO-8859-1fromSpringserver【发布时间】:2020-04-0504:05:09【问题描述】:我正在做SPA。在&lt;head&gt;我有:<metacharset="utf-8">在VSCode中工作(这表明文件也以UTF...}

从用“iso-8859-1”编码的浏览器发布的字符,但它应该是“UTF-8”

{】从用“iso-8859-1”编码的浏览器发布的字符,但它应该是“UTF-8”【英文标题】:characterspostedfrombrowserencodedwith"iso-8859-1"howeveritshouldbe"UTF-8"【发布时间】:2015-02-2620:58:21【问题描述】:我想从前端网站上的用户输...}

Copyright ©2021 时间戳转换器 小常识 114pp | 陕ICP备18005036号