using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Net;
using System.Text.RegularExpressions;namespace Translaction
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void button1_Click(object sender, EventArgs e)
{
this.Close();
} private void btn_translate_Click(object sender, EventArgs e)
{
if (!postData())
{
System.Windows.Forms.MessageBox.Show("发送错误");
}
} //发送数据
public bool postData()
{
string source = null;
try
{
WebClient web = new WebClient();
string url = "http://trans.godict.com/index.php";
//string url="http://localhost/qq/test.asp";
string langpair = "";
source = txt_source.Text;
switch (comb1.SelectedIndex)
{
case 0:
langpair = "en_zh";
break;
case 1:
langpair = "zh_en";
break;
default:
langpair = "en_zh";
break;
}
string param = "from_content=" + source + "&langpair=" + langpair;
web.Headers.Add("Content-Type", "application/x-www-form-urlencoded");
byte[] postdata = Encoding.ASCII.GetBytes(param); byte[] responseData = web.UploadData(url, "POST", postdata);
string htmlString = Encoding.Default.GetString(postdata); txt_result.Text = htmlString;
//setTxt_result(htmlString);
return true;
}
catch(Exception e)
{
txt_result.Text ="Error:"+ e.ToString();
return false;
}
} //设置结果
private void setTxt_result(string source)
{
string a = "";
Regex reg = new Regex("<textarea name=q (.+)?</textarea>");
MatchCollection myMatch=reg.Matches(source);
foreach (Match mm in myMatch)
{
a += mm+"\n";
}
Regex reg1 = new Regex(">(.+)?<");
string rr = reg1.Match(a).ToString();
txt_result.Text = rr.Substring(1, rr.Length - 2);
} private void Form1_Load(object sender, EventArgs e)
{
comb1.Items.Add("英文到中文");
comb1.Items.Add("中文到英文");
comb1.SelectedIndex = 0;
} private void comb1_SelectedIndexChanged(object sender, EventArgs e)
{ }
}
}
在WEB服务器端接收到的参数是乱码,请大家帮忙
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Net;
using System.Text.RegularExpressions;namespace Translaction
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void button1_Click(object sender, EventArgs e)
{
this.Close();
} private void btn_translate_Click(object sender, EventArgs e)
{
if (!postData())
{
System.Windows.Forms.MessageBox.Show("发送错误");
}
} //发送数据
public bool postData()
{
string source = null;
try
{
WebClient web = new WebClient();
string url = "http://trans.godict.com/index.php";
//string url="http://localhost/qq/test.asp";
string langpair = "";
source = txt_source.Text;
switch (comb1.SelectedIndex)
{
case 0:
langpair = "en_zh";
break;
case 1:
langpair = "zh_en";
break;
default:
langpair = "en_zh";
break;
}
string param = "from_content=" + source + "&langpair=" + langpair;
web.Headers.Add("Content-Type", "application/x-www-form-urlencoded");
byte[] postdata = Encoding.ASCII.GetBytes(param); byte[] responseData = web.UploadData(url, "POST", postdata);
string htmlString = Encoding.Default.GetString(postdata); txt_result.Text = htmlString;
//setTxt_result(htmlString);
return true;
}
catch(Exception e)
{
txt_result.Text ="Error:"+ e.ToString();
return false;
}
} //设置结果
private void setTxt_result(string source)
{
string a = "";
Regex reg = new Regex("<textarea name=q (.+)?</textarea>");
MatchCollection myMatch=reg.Matches(source);
foreach (Match mm in myMatch)
{
a += mm+"\n";
}
Regex reg1 = new Regex(">(.+)?<");
string rr = reg1.Match(a).ToString();
txt_result.Text = rr.Substring(1, rr.Length - 2);
} private void Form1_Load(object sender, EventArgs e)
{
comb1.Items.Add("英文到中文");
comb1.Items.Add("中文到英文");
comb1.SelectedIndex = 0;
} private void comb1_SelectedIndexChanged(object sender, EventArgs e)
{ }
}
}
在WEB服务器端接收到的参数是乱码,请大家帮忙
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货