public static void Exec(Quicker.Public.IStepContext context){
var oldValue = context.GetVarValue("text"); // 读取动作里的变量值
//MessageBox.Show(oldValue as string);
//context.SetVarValue("varName", "从脚本输出的内容。"); // 向变量里输出值
string reust = "";
string appid = context.GetVarValue("appid").ToString();
string miyue = context.GetVarValue("miyue").ToString();
string query = context.GetVarValue("query").ToString();
string salt = context.GetVarValue("salt").ToString();
query = Regex.Replace(query, @" ", "");
//按照此要求分割字符串
char[] chspilt = new char[] { '\r', '\n' };
//获取去掉空元素之后的数组
string[] arr2 = query.Split(chspilt, StringSplitOptions.RemoveEmptyEntries);
foreach (var item in arr2)
{
reust += aciyi(appid, miyue, item.ToString(), salt) + "\r\n";
}
context.SetVarValue("text1", reust);
//MessageBox.Show(reust);
}
//返回单个词意
public static string aciyi(string appid,string miyue,string query,string salt) {
string sign = Md5(appid + query + salt + miyue); ;
string url = "http://api.fanyi.baidu.com/api/trans/vip/translate?q=" + query + "&from=en&to=zh&appid=" + appid + "&salt=" + salt + "&sign=" + sign;
string abc = sendPost(url);
//MessageBox.Show(abc);
JObject jo3 = (JObject)JsonConvert.DeserializeObject(abc.ToString());
string test = jo3["trans_result"][0]["dict"].ToString();
JObject jo2 = (JObject)JsonConvert.DeserializeObject(test.ToString());
JArray parcelNumbersArry = JArray.Parse(jo2["word_result"]["simple_means"]["symbols"][0]["parts"].ToString());
string yuanString = jo2["word_result"]["simple_means"]["word_name"].ToString();
int partsNum = 0;
string reust="";
foreach (var item in parcelNumbersArry)
{
partsNum++;
}
if (partsNum <= 1)
{
reust = yuanString + " " + qustring((JObject)parcelNumbersArry[0]);
}
else
{
for (int i = 0; i < partsNum; i++)
{
reust += qustring((JObject)parcelNumbersArry[i]) + "\r\n";
}
reust = yuanString + " " + reust;
}
return reust;
}
public static string qustring(JObject a) {
string reust = "";
string cixing = "";
try
{
cixing = a["part"].ToString();
}
catch (Exception)
{
cixing = "(百度翻译无词性)";
// throw;
}
JArray yisi = JArray.Parse(a["means"].ToString());
foreach (var item in yisi)
{
reust += item + ";";
}
reust = cixing + " " + reust;
return reust;
}