1

我正在从网络上的大表中抓取一些数据来填充数据库。一些字符在我的屏幕上显示得很好,但是当我刮擦时会做这样的事情:!¬†√Öland Islands

我正在使用 file_get_contents 来获取原始数据。在我刮掉它之后它看起来很好(即,如果我只是 var_dump 原始结果):Åland Islands

然后我将数据转换为数组并将其写入文本文件或 sql 文件。我需要做什么来保留字符格式?

4

1 回答 1

1

当“Å”变成“!¬†√Ö”(五个字符)时,很可能是两个或多个不正确的字符代码转换的结果。一次不正确的转换往往会将一个字符变成不同的字符,或者变成一对或三个字符,但几乎没有五个字符。

如果在您转储数据后抓取后一切正常,那么您需要找出正在使用的字符编码,并检查您是如何将数据写入文件的。如果数据是 UTF-8 编码的,正如我所怀疑的那样(世界各地的地理名称或多或少需要汇编),那么写入操作应该是对 UTF-8 数据进行操作的操作,并且在检查写入的结果时对于文件,检查软件也应该以 UTF-8 编码读取数据。

于 2012-01-25T08:51:05.353 回答