1

我在本主题中使用示例代码:http://stackoverflow.com/questions/5568033/convert-a-strings-character-encoding-from-windows-1252-to-utf-8 将 windows-1252 字符串转换为 utf- 8 串。它在 Windows 7 平台上运行良好。但是当我在服务器 - Windows Server 2008R2 上部署这个程序时,它并不能完全按照我的预期工作。

例子:

在窗口 7 上,转换后的字符串:

Phần 1: Thị trường chứng khoán và các Công ty phát hành chứng khoán

Phần 2: Quản lý Nhà nước đối với các Công ty phát hành chứng khoán

Phần 3: Thực trạng và phương hướng quản lý phù hợp ở Việt Nam hiện nay

在windows server 2008R2上,转换后的字符串:

Phần 1: Thị trýờng chứng khoán và các Công ty phát hành chứng khoán

Phần 2: Quản lý Nhà nýớc ðối với các Công ty phát hành chứng khoán

Phần 3: Thực trạng và phýõng hýớng quản lý phù hợp ở Việt Nam hiện nay

我找不到解决这个问题的方法。你有什么办法可以帮助我吗?非常感谢!

4

1 回答 1

2

我的猜测是您的两台机器上的旧代码页之间存在不匹配。

您可以使用

[Text.Encoding]::Default

在 PowerShell 中找出答案:

IsSingleByte      : True
BodyName          : iso-8859-1
EncodingName      : Western European (Windows)
HeaderName        : Windows-1252
WebName           : Windows-1252
WindowsCodePage   : 1252
IsBrowserDisplay  : True
IsBrowserSave     : True
IsMailNewsDisplay : True
IsMailNewsSave    : True
EncoderFallback   : System.Text.InternalEncoderBestFitFallback
DecoderFallback   : System.Text.InternalDecoderBestFitFallback
IsReadOnly        : True
CodePage          : 1252
于 2012-05-31T10:38:00.223 回答