问题标签 [windows-1252]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby-on-rails - 不兼容的字符编码:Windows-1252 和 UTF-8
这有点奇怪,当我运行 localhost:3000 时,它会提示我下面列出的错误
但如果我执行 localhost:3000/en/#actionName,它会呈现其他页面。
由于 localhost:3000 呈现 index.html.erb,仅出于测试目的,我删除了 index.html.erb 的内容;它呈现了布局。那么,index.html.erb 页面的内容有什么问题呢?对我来说一切都很好,我也从服务器(工作版本)下载了 index.html.erb 的内容,它仍然给我同样的错误。需要一些指导,我可能会出错。我尝试了此链接Ruby on Rails 3 中提到的解决方案,不兼容的字符编码:UTF-8 和 ASCII-8BIT 与 i18n但完全没有运气。
提前致谢。
为什么这样做它已在下面列出:但是另一个问题出现了,为什么添加这些源代码只会为 index.html.erb 生成此类错误。
.net - 在 Windows Phone 8 中读取 Windows-1252 编码
在 Windows 中,我可以通过 .NET 使用 Encoding.GetEncoding(“Windows-1252”)来检索“Windows-1252”代码页编码。不幸的是,此调用在 Windows Phone 8 模拟器中引发 ArgumentExtception,指定编码名称无效。我环顾了 MSDN,但没有发现任何有用的东西。有谁知道 Windows Phone 8 中可用的编码以及“Windows-1252”编码的新名称是什么?
是的,我知道使用“iso-8859-1”编码并手动替换 129-159 范围内的字符的替代选项。但如果可能的话,我会尽量避免这种情况。
非常感谢,迈克尔
php - PHP 编码转换为 Windows-1252,同时保持 UTF-8 兼容性
我需要将上传的具有未知编码的文件名转换为 Windows-1252,同时还要保持 UTF-8 兼容性。
当我将这些文件传递给控制器(我对其没有任何影响)时,这些文件必须是 Windows-1252 编码的。然后,该控制器再次生成通过 MySQL 存储到数据库中的有效文件(名称)列表 - 因此我需要 UTF-8 兼容性。传递给控制器的文件名和写入数据库的文件名必须匹配。到目前为止,一切都很好。
在极少数情况下,当转换为“Windows-1252”时(例如使用 te 字符“ï”),该字符会转换为 UTF-8 中无效的内容。MySQL 然后删除这些无效字符 - 结果磁盘上的文件名和存储到数据库的文件名不再匹配。这种有时会失败的转换是通过简单的重新编码来实现的:
为了防止转换生成无效字符,我可以再次从重新编码的字符串中删除所有无效的 UTF-8 字符:
但这将完全删除/重新编码字符串中留下的任何特殊字符。例如,我丢失了所有在德语中很常见的“äöüÄÖÜ”等。
如果您知道一种更简洁的编码到 Windows-1252 的方法(不会丢失有效的特殊字符),请告诉我。
非常感谢任何帮助。先感谢您!
python - 在 python 中正确读取 Windows-1252(cp1252) 文件中的文本
好吧,正如标题所示,我遇到的问题是从 python 中的 windows-1252 编码文件中正确读取输入并将所述输入插入到 SQLAlchemy-MySql 表中。
当前系统设置:
Windows 7 VM,带有输出文件的“Roger Access Control System”;
Ubuntu 12.04 LTS VM 与 Windows 系统的共享文件夹,因此我可以使用“Python 2.7.3”访问该文件。
现在到实际问题,对于输入文件,我有一个“VM 共享文件夹”,其中包含通过 Roger 访问控制系统(roger.pl 了解更多详细信息)在 Windows 7 系统上生成的文件,该文件称为“ PREvents.csv" 暗示它的内容,一个 ";" 单独的数据列表。
数据的示例格式:
第 4 个字段包含卡所有者姓名,第 5 个字段包含所有者姓氏,第 6 个字段包含所有者分配的组。
问题在于上述三个字段中的任何一个都可以包含特定于拉脱维亚语言的字符,在示例文件中,单词“Jānis”包含字母“ā”,在 unicode 中是 257。
正如我习惯的那样,我这样打开文件:
到目前为止,一切正常 - 它打开了文件,所以我继续迭代文件的每一行(这是一个连续运行的脚本,所以请原谅循环):
这就是问题开始的地方,如果print repr(firstname)
它打印出来u'J\xe2nis'
,据我所知,这是不正确的 - `\xe2\ 不代表拉脱维亚字符“ā”。
根据事件类型进一步向下循环,我将变量分配给 SQLAlchemy 对象并插入/更新:
在我寻找答案的过程中,我发现了如何定义要使用的默认编码:
这对我没有任何帮助。
基本上,这一切都会导致我无法插入正确的所有者名字/姓氏以及所有者分配的组名,如果它们包含任何拉脱维亚特定字符,例如:
我还想补充一点,我无法更改“PREvents.csv”文件编码,并且“RACS”系统不支持插入 UTF-8 或 Unicode 文件 - 如果您尝试任何一种方式,系统都会为拉脱维亚特有的字符。
如果需要任何其他信息,请现在告诉我,我很乐意提供:)
任何帮助将不胜感激。
windows - CP1242 支持的语言
什么是官方网站,我可以从中获得 CP1242 支持的语言列表
ruby - Ruby:将字符串转换为 UTF-8 后删除不可见字符
我正在处理来自这个网站的带有windows-1252
字符集的文本。将文本转换为 UTF-8 是使用 完成的force_encoding
,但文本仍然包含我无法摆脱的空格。无法使用text.gsub!(/\s/, ' ')
或类似技术删除空格。
iconv gem 也不能解决问题 - 如此处所述。很明显,如果我没有将编码指定为 UTF-8 ,则空格是原始文本和windows-1252
字符集的残余,因为我会收到警告。invalid multibyte char (US-ASCII)
我不是文本编码专家,所以我可能会忽略一些琐碎的事情。
更新:这是我目前使用的脚本。
这是包含我尝试删除的不可见字符的文本示例。我指的是数字16之前的空格。
cobraron aliento para conversar con él。16 Al punto corrió la voz, y se divulgó generalmente esta noticia en el palacio del rey: Han
javascript - JavaScript中巨大的字符串替换?
我有一个小型 JavaScript 应用程序,可以解析用户放入浏览器的文件。最近我发现了一些非英文字符的问题。此处放置的文件类型使用的是 Windows-1252 字符集,因此诸如 、 之类的字符ñ
实际上是通过 as 的ñ
,我必须将它们全部转换为正确的字符。
例如,我知道Señor
应该是Señor
西班牙语。
我找到了一个非常有用的网站,其中收集了角色以及我需要转换到的对应角色。
我将其压缩为两个 JavaScript 数组:
将段落中的所有字符替换为 in 中toReplace
的对应(相同索引)的最有效方法是replaceWith
什么?
我希望这不会太重循环,因为将 100 多个文件放入这个已经进行了一些繁重的循环和解析的应用程序并不少见。
也许有更好的方法来做到这一点,而不是将这些字符保存在数组中?
编辑- 我刚刚意识到我可能需要用 unicode equivilent 代替。这是一个按相同顺序排列的 unicode 字符数组:
javascript - XHR 请求中使用的强制编码
在我正在开发的浏览器扩展中,我正在使用 jQuery 执行 XHR 请求以加载一些数据:
远程加载的数据是一个 windows-1252 编码的 CSV 文件,带有 Content-disposition:attachment 并且没有 mime-type/charset 标头(我无法控制后端,所以我无法修复它)。
如何强制浏览器将响应解码为 windows-1252 而不是 utf-8,就像它目前所做的那样?