频道直达 - 专题 - 新闻 - 技巧 - 组网 - 开发 - 安全 - web编程 - 图像 - 操作系统 - 数据库 - 教育 - 旅游 - 健康 - 时尚 - 驱动 - 软件 - 游戏 - 多媒体 - ERP - 讨论组

把获取汉字首字母的程序编成dll供大家使用与参考

来源: 作者: 出处:巧巧读书 2006-09-26 进入讨论组

  //将所有国标汉字的拼音首字母取出来,放到一个表中,然后查出.,也windows 98等自带的//输入法生成器,逆转化一下拼音输//入法的码表

本文章是提供大家参考.并已写成dll文件给大家使用.

public string Getpingyin(string strName,System.Data.OleDb.OleDbConnection con,System.Data.SqlClient.SqlConnection sqlcon)
{
System.Data.SqlClient.SqlDataAdapter sqlda;
System.Data.OleDb.OleDbDataAdapter oleda;
string strSimple="";
strName=strName.Trim();
System.Data.DataSet myDataSet=new System.Data.DataSet();
if(strName.Length>0)
{
for(int num=0;num<strName.Length;num++)//不准用户输入非汉字
if(Convert.ToInt32(strName[num])<=255)
{

System.Windows.Forms.MessageBox.Show("你输入的字符\" "+strName[num].ToString()+"\"不是汉字,请更正","错误",System.Windows.Forms.MessageBoxButtons.OK,System.Windows.Forms.MessageBoxIcon.Stop);
return "";

}

string strSql="select 汉字,首字母 from 拼音首字母";
string strWhere=" where 汉字='"+strName[0].ToString()+"'"; //查询汉字,与字母的SQL
for(int i=1;i<strName.Length;i++)
{
strWhere+=" or 汉字='"+strName[i].ToString()+"'";
}
strSql+=strWhere;
if(con!=null)//看用户是用那个名字空间类.
{
oleda=new System.Data.OleDb.OleDbDataAdapter(strSql,con);
oleda.Fill(myDataSet,"拼音首字母");
}
else

{
sqlda=new System.Data.SqlClient.SqlDataAdapter(strSql,sqlcon);
sqlda.Fill(myDataSet,"拼音首字母");
}
for(int j=0;j<strName.Length;j++)//按汉字顺序找出相关的字母.
{
for(int k=0;k<myDataSet.Tables["拼音首字母"].Rows.Count;k++)
{
if(strName[j].ToString()==myDataSet.Tables["拼音首字母"].Rows[k]["汉字"].ToString())
{
strSimple+=myDataSet.Tables["拼音首字母"].Rows[k]["首字母"].ToString();
break;

}
}
}
myDataSet.Clear();

return strSimple;//得到字母

}

return "";

}

//用法例子
//OleDbConnection con=new .........;
//Getpingyin("我",con,null);返回w静态页面:http://www.qqread.com/dotnet/u228423.html进入讨论组讨论。
收藏此文】【 】【打印】【关闭
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
巧巧读书宗旨
相关专题
最新论坛文章
站内各频道最新更新文档
站内最新制作专题
热门关键字导读
Photoshop教 程照片处理 照片制作 PS快捷键 抠图
计 算 机 故 障XP系统修复
艺 术 与 设 计设计 流媒体 设计欣赏 边框
计 算 机 安 全ARP
站内频道文章精选
巧巧电脑频道编辑信箱  告诉我们您想看的专题或文章