Jos*_*hua 58 vb.net character-encoding windows-1252 .net-core
这个程序在为.NET 4编译时工作正常,但在为.NET Core编译时也能正常工作.我理解不支持编码的错误,但不知道如何解决它.
Public Class Program
Public Shared Function Main(ByVal args As String()) As Integer
System.Text.Encoding.GetEncoding(1252)
End Function
End Class
Run Code Online (Sandbox Code Playgroud)
svi*_*ick 109
要做到这一点,你需要注册的CodePagesEncodingProvider从实例System.Text.Encoding.CodePages包.
为此,请安装System.Text.Encoding.CodePages包:
dotnet add package System.Text.Encoding.CodePages
Run Code Online (Sandbox Code Playgroud)
然后(在隐式或显式运行之后dotnet restore),您可以调用:
Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);
var enc1252 = Encoding.GetEncoding(1252);
Run Code Online (Sandbox Code Playgroud)
或者,如果您只需要一个代码页,则无需注册即可直接获取:
var enc1252 = CodePagesEncodingProvider.Instance.GetEncoding(1252);
Run Code Online (Sandbox Code Playgroud)
小智 7
请写出:
<ItemGroup>
<PackageReference Include="System.Text.Encoding.CodePages" Version="4.3.0" />
</ItemGroup>
Run Code Online (Sandbox Code Playgroud)
在csproj.
在包控制台中写入'dotnet restore',恢复程序集.
并使用此代码进行示例:
public class MyClass
{
static MyClass()
{
Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);
}
}
Run Code Online (Sandbox Code Playgroud)