C# 使用POST方法将数据从ASP页面发送到PHP页面的德语字符

C# 使用POST方法将数据从ASP页面发送到PHP页面的德语字符,c#,php,asp.net,C#,Php,Asp.net,我使用POST方法从ASP向PHP页面发送数据时遇到问题。 我想寄一封有名字的邮件。因为我住在奥地利,所以名字是德语的,我们有一些特殊的字符。这些角色不会写 顺便说一句,我对用C语言编程还是相当陌生的。我以前有一个用Java脚本编写的网站,但我必须把它与数据库连接起来,因此我改用C语言,现在我就像一个“森林中的宝贝” 这就是上面的字符(在这个.hdndan.Value中)到达邮件正文的方式: ÃÖœ|ÃÃÃü|ß|Ã|@ 有人知道我能做些什么来最终得到同样的角色吗 编辑20143013:我

我使用POST方法从ASP向PHP页面发送数据时遇到问题。 我想寄一封有名字的邮件。因为我住在奥地利,所以名字是德语的,我们有一些特殊的字符。这些角色不会写

顺便说一句,我对用C语言编程还是相当陌生的。我以前有一个用Java脚本编写的网站,但我必须把它与数据库连接起来,因此我改用C语言,现在我就像一个“森林中的宝贝”

这就是上面的字符(在这个.hdndan.Value中)到达邮件正文的方式:

ÃÖœ|ÃÃÃü|ß|Ã|@

有人知道我能做些什么来最终得到同样的角色吗

编辑20143013:我想我有一个线索:我必须将postData编码成ANSI(代码页1252)。我试过这么做,但没用。有人知道我该怎么做吗

编辑20140320:我甚至不敢给你答案:我一直在错误的地方寻找(有点像MH370):问题在于邮件的接收端(我使用POP3查看器进行测试);当我将邮件下载到Outlook时,一切正常。有趣的是,这在原始(Javascript)版本中没有发生,这就是为什么我看错了地方

谢谢
Eddie

在调用UploadValue之前,尝试将client.Encoding设置为UTF-8。还要确保在服务器上以UTF-8格式阅读文本。

尝试
this.hdndaden.Value=HttpUtility.UrlEncode(“ÄÜ||||||”)在您的post参数上


在PHP上,您需要通过
html\u entity\u decode

对参数进行解码。您的字符串似乎是在
UTF8
中编码的,在
ISO-8859-2
中解码的
       this.hdnDaten.Value = "ÄÖÜ|äöü|ß|é|@";

// mit POST versuchen
   using (var client = new WebClient())
   {
       var postData = new System.Collections.Specialized.NameValueCollection();
       postData.Add("von", this.hdnVon.Value);
       postData.Add("an", this.hdnAn.Value);
       postData.Add("betreff", this.hdnBetreff.Value);
       postData.Add("daten", this.hdnDaten.Value);
       byte[] response = client.UploadValues("http://xxxxxx.php", "POST", postData);
       var responsebody = Encoding.UTF8.GetString(response);
   }