问题标签 [latin1]
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.
mysql - 将 mysql 表从 latin1 转换为 utf8
我正在尝试将一些 mysql 表从 latin1 转换为 utf8。我正在使用以下命令,这似乎主要工作。
但是,在一张桌子上,我收到有关重复键条目的错误。这是由“名称”字段上的唯一索引引起的。似乎在转换为 utf8 时,任何“特殊”字符都被索引为它们的直接英文等价物。例如,已经有一条名称字段值为“Dru”的记录。转换为 utf8 时,带有“Drü”的记录被视为重复。“Patrick”和“Påtrìçk”也是如此。
以下是重现该问题的方法:
encoding - 加密的数据库内的 UTF-8 编码
我从本教程转换我的数据库
http://en.gentoo-wiki.com/wiki/Convert_latin1_to_UTF-8_in_MySQL
但我没有注意到数据库内的阿拉伯字符是加密的,比如
通过 php 脚本与数据库连接一切都很好,但在数据库内部,阿拉伯字符看起来像那样
我尝试通过以下命令使用 iconv 将数据库返回到旧编码,即 WINDOWS-1256
我收到了这个错误
iconv:在位置非法输入序列
所以我尝试使用-c选项再次运行该命令
它工作正常,我也可以看到数据库中的阿拉伯字符,但是缺少很多字符,例如:
我想去购物
转换后
我想
我想知道如何修复阿拉伯字符,使其在数据库中正常读取,不遗漏任何内容
谢谢
django - 更改 Django 站点默认编码的指南
Django 提供开箱即用的 unicode 支持,并且默认支持 utf-8。假设您已经成功地开发、调试和测试了一个包含 utf-8 格式的 Django 应用程序的站点。基本上无痛迁移到不同的编码需要哪些步骤,比如 latin-1 ?我希望它只需要设置DEFAULT_CHARSET = 'latin-1'
和更改数据库的编码,但我怀疑它是否那么简单。
为了便于讨论,您可以忽略数据库中任何已存储的 utf-8 数据的迁移;我最感兴趣的是 Django 代码中所需的检查和更改以及数据库和 Web 服务器配置。
perl - 如何在 Perl 中读取 ISO 8859-1 (Latin-1) 编码文本
所以我正在尝试编写一个 perl 脚本来读取以 Latin-1 编码的文件。出于某种原因,这行不通。当我尝试对我知道在文件中的字符(它在第一行)进行简单搜索时,什么也没有出现。我正在使用编码“iso 8859-1”;下面,但我也尝试过binmode(STDIN, ":utf8"); . 关于我可能做错了什么以及如何改正的任何建议?
mysql - 如何即时将列转换为 ASCII 而无需保存以检查是否与外部 ASCII 字符串匹配?
我有一个成员搜索功能,您可以在其中提供部分名称,并且返回应该是所有成员至少具有与该输入匹配的用户名、名字或姓氏之一。这里的问题是有些名字有像é
in这样的“奇怪”字符Renée
,用户不想输入奇怪的字符而是普通的 ASCII 替代字符e
。
在 PHP 中,我使用 iconv 将输入字符串转换为 ASCII(以防有人键入奇怪的字符)。但是,在数据库中,我还应该将奇怪的字符转换为 ASCII(显然)以使字符串匹配。
我尝试了以下方法:
(这是两次尝试。)两者都不起作用。两者都有Ren?e
作为输出。问号应该是e
. 如果它输出没关系,Ren?ee
因为我可以在转换后删除所有问号。
可以想象,我要查询的列是 Latin1 编码的。
谢谢。
sql-server-2005 - 带有 Latin1 代码页的 SQL Server 数据库将日文字符显示为“?”
以下场景的三个问题:
- SQL Server 2005 生产数据库,带有 Latin1 代码页并显示“?” Management Studio 中的无效字符。
- SomeCompanyApp 客户端作为服务填充来自服务器和工作站的数据。
- SomeCompanyApp 管理控制台显示“?” 对于亚洲字符。
由于这是一个产品数据库,我不会写信给它。
我不知道将数据存储在数据库中的客户端应用程序是否实际上将其正确存储为 Unicode,并且它根本没有显示,因为它们使用的是 Latin1 作为控制台。
Q1:据我了解,无论代码页如何,SQL Server 都将 nvarchar 文本存储为 Unicode,或者我完全错了,如果代码页是 Latin1,那么不在该代码页中的所有内容都会转换为“?”。
Q2:文字栏也一样吗?
Q3:有没有办法使用 SQL Server Management Studio 或 Visual Studio 和一些代码(不关心哪种语言:))来查询数据库并告诉我字符是否真的显示为日语、中文、韩语等。 ?
我的最终目标是从数据库中提取数据并使用 UTF-8 将其存储在另一个数据库中,以在我自己的客户端 webapp 中显示日语和其他亚洲字符。 我将满足于 Q3 的答案。 我可以用多种语言进行编码,至少可以理解其他一些语言,但我对 Unicode 的了解还不够。如果您想知道我的 webapp 将使用 pyodbc 和 cassandra,但对于这些问题并不重要。
php - 如何使用 php 检索 utf-8 数据并在 excelsheet db 转储中显示正确的编码?
嗨,我主要将英语和德语字符保存到当前设置为 utf-8 字符集的 mysql 数据库中。
我假设我应该对这种类型的数据使用 latin1 字符集,对吗?
如果是这样,我该如何更改字符集以更正现在保存在 utf-8 中的德语字符?
更新
也许这是一个检索问题......当我通过 php 从数据库导出数据时,我当然会得到 utf-8,我可以做检索给我 latin1 吗?
更新 1
好的,我正在建一个网站,html编码是uft-8,db是uft-8,现在我想运行一些导出并提取数据,这些数据应该在excel表中返回,数据是utf-8,但在这里我需要字符为 latin1 ...或者从数据库中提取的 excel 表的编码需要使 Töst 显示 Täst。现在我得到这样的数据-> Töst
更新 2
我正在使用以下 php 脚本进行转储:
http://www.fundisom.com/phparadise/php/databases/mySQL_to_excel
在第 48 行,我已将代码更改为
行为没有改变。
我将如何解决这个问题?
几乎解决
我认为这是我需要的……但我需要在 php 脚本的上下文中检查它……明天:-)
wordpress - WordPress/MySQL - 撇号作为问号输出
我正在将客户的 WordPress 网站从旧主机移动到闪亮的新主机。我已经完成了 WP 数据库的 MySQL Dump,并将其导入到新主机中。
一切都很顺利,除了撇号被编码为问号。
我做了一些研究,我得到的最接近的是将 .sql 转储保存在 UTF8 中(我已经完成了),然后尝试再次导入 - 不走运。我还将DEFAULT CHARSET=latin1;
MySQL 转储中的每个引用更改为DEFAULT CHARSET=utf8;
,但是,这也没有什么区别。
在一些奇怪的情况下(我不记得确切的配置),撇号完全丢失,没有被任何东西取代,但它们只是消失了。
它们不是标准的直撇号 ( '
),而是我相信的正确的大引号 ( ’
) - 例如,它们是 ',而不是 '。希望结果好!
有什么建议吗?
谢谢!
杰克
python - unicode解码问题
这很有趣.. 我正在尝试从 openstreetmap 读取地理查找数据。执行查询的代码如下所示
Zürich 的查询在 UTF-8 数据上正确地进行了 URL 编码。这里难怪。
当我打印响应时,带有变音符号的 u 被编码为 latin1 (0xFC)
但这是无稽之谈,因为 openstreetmap 以 UTF-8 格式返回 JSON 数据
文件内容也证实了这一点,然后我明确地说它在读取和 json 解析时都是 UTF-8。
这里发生了什么 ?
编辑:显然是 json.loads 搞砸了。
javascript - 如何从 JavaScript 中的字符串中获取 ASCII 码?
(在 StackOverflow 上已经提出了类似的问题,但不完全是这个。最近的可能是“ javascript how to convert unicode string to ascii ”,其中已经有“this has to be a dup[licate]”的注释。我已经阅读了一些类似的帖子,但他们没有回答我的具体问题。我查看了非常好的W3Schools网站,也搜索了它,但也没有找到答案。所以这里的任何提示都会非常重要赞赏。)
我有一个字节数组被传递给一段 JavaScript。在 JavaScript 中,数据以字符串形式到达。我不知道传输机制,因为它来自第 3 方应用程序。我什至不知道字符串是“宽”还是“窄”。
在我的 JavaScript 中,我有一些类似b = str.charCodeAt(pos);
.
我的问题是 0x86 = 134 之类的字节值以字符 0x2020 = 8224 的形式出现。这似乎是因为我的原始字节被解释为 Latin-1(可能)“匕首”字符,然后被翻译成等效的 Unicode 代码点。(问题可能是也可能不是 JavaScript 的“错误”。)其他值也会出现类似的问题,尽管范围 0x00..0x7F 和 0xA0..0xFF 似乎没问题,但 0x80..0x9F 中的大多数值都会受到影响,在每种情况下的值似乎都是原始 Latin-1 的 Unicode。
另一个观察结果是,如果长度以字节为单位,那么字符串的长度就是我对窄字符串的期望。(另一方面,如果长度返回一个抽象字符的值,这并不能告诉我任何事情。)
那么,在 JavaScript 中,有没有办法获取字符串中的“原始”字节,或者直接获取 Latin-1 或 ASCII 字符代码,或者在字符编码之间进行转换,或者定义默认编码?
我可以编写自己的映射,但我不想这样做。我希望这就是我最终会做的事情,但那感觉就像一个杂物。
我还在研究调用应用程序中是否有什么可以调整的(因为它可能将数据作为宽字符串传递,尽管我对此表示怀疑)。
不过,无论哪种方式,我都会对是否有简单的 JavaScript 解决方案感兴趣,或者想了解为什么没有。
(如果传入的数据是字符数据,那么自动处理 Unicode 会很棒。但它不是,它只是一个二进制数据流。)
谢谢。