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

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

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实现按拼音码模糊查询了。

标签:
ASP.NET,拼音码,模糊查询

免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
狼山资源网 Copyright www.pvsay.com

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

暂无“ASP.NET实现按拼音码模糊查询的方法”评论...