挪威语特殊字符未正确显示

我开发了一个简单的应用程序,它使用便携式对象将单词从英语翻译成挪威语。


no.po(便携物品)


msgid "Hello world!"

msgstr "Hei Verden!"


msgid "Date Of Birth"

msgstr "Fødselsdato"

启动.cs


public void ConfigureServices(IServiceCollection services)

{

    services.Configure<CookiePolicyOptions>(options =>

    {

        // This lambda determines whether user consent for non-essential cookies is needed for a given request.

        options.CheckConsentNeeded = context => true;

        options.MinimumSameSitePolicy = SameSiteMode.None;

    });



    services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1)

        .AddViewLocalization();


    services.AddPortableObjectLocalization();


    services.Configure<RequestLocalizationOptions>(

        opts =>

        {

            var supportedCultures = new List<CultureInfo>

            {

        new CultureInfo("en-US"),

        new CultureInfo("en"),

        new CultureInfo("fr-FR"),

        new CultureInfo("fr"),

        new CultureInfo("no"),

        new CultureInfo("nb-NO"),

            };


            opts.DefaultRequestCulture = new RequestCulture("en-US");

            opts.SupportedCultures = supportedCultures;

            opts.SupportedUICultures = supportedCultures;

        });

}


// This method gets called by the runtime. Use this method to configure the HTTP request pipeline.

public void Configure(IApplicationBuilder app, IHostingEnvironment env)

{

    if (env.IsDevelopment())

    {

        app.UseDeveloperExceptionPage();

    }

    else

    {

        app.UseExceptionHandler("/Home/Error");

    }


    app.UseStaticFiles();

    app.UseCookiePolicy();

    app.UseRequestLocalization();

    app.UseMvc(routes =>

    {

        routes.MapRoute(

            name: "default",

            template: "{controller=Home}/{action=Index}/{id?}");

    });

}

实际输出

http://img1.mukewang.com/61da4d130001750404840221.jpg

如上图所示,

F dselsdato 未正确编码。我不知道这背后的原因是什么。如果我错过了代码中的任何内容,请建议我实现我的期望。

预期输出应为Fødselsdato

谢谢。


哈士奇WWW
浏览 179回答 1
1回答

UYOU

我找到了解决问题的方法。为了运行显示国际语言字符,我们需要检查我们的文件是否为UTF-8格式。默认情况下,它将采用ANSI格式。我们需要使用任何文本编辑器将其从ANSI转换为UTF-8。我将展示我是如何修复它的。在Notepad++ 中打开包含本地化文本的可移植对象 (po) 文件,然后转到“编码”选项卡并检查格式。如果它不是UTF-8格式,则将其转换为UTF-8,如下所示。保存文件并运行应用程序,您会看到所有字符在浏览器中完美显示。
打开App,查看更多内容
随时随地看视频慕课网APP