亲宝软件园·资讯

展开

ASP.NET实现按拼音码模糊查询 ASP.NET实现按拼音码模糊查询的方法

人气:0
想了解ASP.NET实现按拼音码模糊查询的方法的相关内容吗,在本文为您仔细讲解ASP.NET实现按拼音码模糊查询的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:ASP.NET,拼音码,模糊查询,下面大家一起来学习吧。

整个过程分为两部分:生成拼音码字段、按拼音码进行模糊查询。

批量生成拼音码字段的实现:

protected void Button1_Click1(object sender, EventArgs e)
 {
 string strSQL;
 strSQL = "select mc from TEST001";
 IDataReader dr = dac.DataReaderQuery(strSQL);
 while (dr.Read())
 {
  string mc=dr["mc"].ToString();
  string pym = StrToPinyin.GetChineseSpell(mc);
  if (pym.Length > 6)
  {
  pym = pym.Substring(0, 6);//我这里只去了6位,大家可以看自己爱好而定!
  } 
  string updateSql = "update TEST001 set pym ='" + pym + "' where mc='" + mc + "'";

  dac.update(updateSql);
 }
 dr.Close(); 
 Response.Write("<script>alert('操作成功!');</script>");
 }

StrToPinyin 类的GetChineseSpell方法(取汉字拼音字母):

public static string GetChineseSpell(string strText)
 {
 if (strText == null || strText.Length == 0)
  return strText;
 System.Text.StringBuilder myStr = new System.Text.StringBuilder();
 foreach (char vChar in strText)
 {
  // 若不是汉字则直接输出 
  if ((int)vChar < 19968 || (int)vChar > 40869)
  {
  myStr.Append(char.ToUpper(vChar));
  }
  else if ((int)vChar >= 19968 && (int)vChar <= 40869)
  {
  // 若字符Unicode编码在编码范围则 查汉字列表进行转换输出 
  foreach (string strList in strChineseCharList)
  {
   if (strList.IndexOf(vChar) > 0)
   {
   myStr.Append(strList[0]);
   break;
   }
  }
  }
 }
 return myStr.ToString();
 }

按拼音码进行模糊查询:

这个简单了,用select查询,where条件用LIKE即可,相信大家一定都会操作。

相信以后在实现按用户输入的拼音码进行数据的模糊查询功能的时候,大家就可以运用今天所学的ASP.NET实现按拼音码模糊查询了。

加载全部内容

相关教程
猜你喜欢
用户评论