Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 包含其他语言(如韩语)的wpf webbrowser uri_C#_Wpf_Uri - Fatal编程技术网

C# 包含其他语言(如韩语)的wpf webbrowser uri

C# 包含其他语言(如韩语)的wpf webbrowser uri,c#,wpf,uri,C#,Wpf,Uri,当我使用MyWebBrowser.Source=newUriURI时,我遇到了一个问题 我想在uri中添加韩语。但当我这样做的时候,我可以看到来自韩语的破碎字符。我寻找解决办法,但我不明白该怎么办。有人指导使用编码/解码的方法。。但是,我不知道如何将它应用到我的代码中 请帮帮我 字符串uri=http://+room\u name+.server.ohcs.uu.gl/chat?nick=+HttpUtility.UrlEncodenick,System.Text.Encoding.GetEn

当我使用MyWebBrowser.Source=newUriURI时,我遇到了一个问题

我想在uri中添加韩语。但当我这样做的时候,我可以看到来自韩语的破碎字符。我寻找解决办法,但我不明白该怎么办。有人指导使用编码/解码的方法。。但是,我不知道如何将它应用到我的代码中

请帮帮我

字符串uri=http://+room\u name+.server.ohcs.uu.gl/chat?nick=+HttpUtility.UrlEncodenick,System.Text.Encoding.GetEncodingeuc kr`+&Text=&sessiond=+room\u name; 上面的代码无法使韩语正确。

您应该对来自用户输入的字符串和包含会破坏URL/无法正确通过的字符的字符串使用HttpUtility.UrlEncode方法。这样,在URL中使用它是安全的

string uri = "http://" + HttpUtility.UrlEncode(room_name) + ".com/chat?nick=" + HttpUtility.UrlEncode(nick, System.Text.Encoding.GetEncoding("euc-kr"));

该类可以在assembly System.Web.dll中找到。如果找不到与命名空间相关的错误,请确保使用“添加引用”对话框将引用添加到System.Web.dll。

我添加了有关我找到的解决方案的更多说明

这是xaml代码

下面是cs代码

公共房间1

{

字符串缺口=한글;

webBrowser.Navigatehttp:/freechat.esy.es/minichat?chat=room1&nick=+nick

}

以上代码不合适,因为한글 我想这不是一封普通的信。 UriBuilder=新的UriBuilder=한글;

字符串url=builder.ToString

WebBrowser web=新的WebBrowser; web.Navigateurl

UriBuilder转换包含한글[字符串url]指向可被web接受的常用字母

输入字母:[한글]

UriBuilder的翻译信函:

[http:/freechat.esy.es/minichat?chat=room1&nick=%ED%95%9C%EA%B8%80]

我找到了答案。我目前正在使用以下代码,它现在可以正常工作

    string make_uri(string uri)
    {
        UriBuilder ub = new UriBuilder(uri);
        string ubS = ub.ToString();
        return ubS;
    }

    string send_uri { get; set; }

    private void NavigateTo()
    {
        int cs = combo1.SelectedIndex;

        if (DN == "Your Nick")
        {
            if (cs == 0) send_uri = ("http://freechat.esy.es/minichat?chat=room1" + mode + key);
            else if (cs == 1) send_uri = ("http://freechat.esy.es/minichat?chat=chataa" + mode + key);
            else if (cs == 2) send_uri = ("http://freechat.esy.es/minichat?chat=room2" + mode + key);
        }
        else
        {
            if (cs == 0) send_uri = (make_uri("http://freechat.esy.es/minichat?chat=room1&nick=" + DN + mode + key));
            else if (cs == 1) send_uri = (make_uri("http://freechat.esy.es/minichat?chat=chataa&nick=" + DN + mode + key));
            else if (cs == 2) send_uri = (make_uri("http://freechat.esy.es/minichat?chat=room2&nick=" + DN + mode + key));
        }

        webBrowser.Navigate(send_uri);
    }

抱歉..string uri=http://+room\u name+.server.ohcs.uu.gl/chat?nick=+HttpUtility.UrlEncodenick,System.Text.Encoding.GetEncodingeuc kr`+&Text=&sessiond=+room\u name;以上代码无法使韩语正确。如果我回忆正确,它应该可以工作,但我会编辑我的答案以防万一。谢谢您的帮助。它可以工作,但是,当我将编码字符串发送到chatserver时,它无法工作。这可能是由于另一个原因。。无论如何,谢谢!!我放弃了修改此代码。。您能解释一下您的解决方案是什么修复了您原来的问题吗?这可能有助于该问题的未来读者。
    string make_uri(string uri)
    {
        UriBuilder ub = new UriBuilder(uri);
        string ubS = ub.ToString();
        return ubS;
    }

    string send_uri { get; set; }

    private void NavigateTo()
    {
        int cs = combo1.SelectedIndex;

        if (DN == "Your Nick")
        {
            if (cs == 0) send_uri = ("http://freechat.esy.es/minichat?chat=room1" + mode + key);
            else if (cs == 1) send_uri = ("http://freechat.esy.es/minichat?chat=chataa" + mode + key);
            else if (cs == 2) send_uri = ("http://freechat.esy.es/minichat?chat=room2" + mode + key);
        }
        else
        {
            if (cs == 0) send_uri = (make_uri("http://freechat.esy.es/minichat?chat=room1&nick=" + DN + mode + key));
            else if (cs == 1) send_uri = (make_uri("http://freechat.esy.es/minichat?chat=chataa&nick=" + DN + mode + key));
            else if (cs == 2) send_uri = (make_uri("http://freechat.esy.es/minichat?chat=room2&nick=" + DN + mode + key));
        }

        webBrowser.Navigate(send_uri);
    }