自动生成五笔码

hui120687 2008-11-19 02:07:09
那位大侠知道如何如何用。NEt 自动生成五笔码
...全文
342 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
pvgyetg 2008-11-19
  • 打赏
  • 举报
回复
友情UP
hui120687 2008-11-19
  • 打赏
  • 举报
回复
谢谢了 我先看看
cheng_er 2008-11-19
  • 打赏
  • 举报
回复
顶3楼
lizhengnan 2008-11-19
  • 打赏
  • 举报
回复
帮顶
浮生若梦丶 2008-11-19
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 bloodish 的回复:]
自己去google下,有个叫:AutoWBPY.DLL
PInvoke调用里面的一个函数即可:
[Dllimport("AutoWBPY.dll",CharSet=CharSet.Auto)]
public static extern string getbm(string str,int sel);
sel = 1是五笔

大致是这样
[/Quote]
up
bloodish 2008-11-19
  • 打赏
  • 举报
回复
自己去google下,有个叫:AutoWBPY.DLL
PInvoke调用里面的一个函数即可:
[Dllimport("AutoWBPY.dll",CharSet=CharSet.Auto)]
public static extern string getbm(string str,int sel);
sel = 1是五笔

大致是这样
RexZheng 2008-11-19
  • 打赏
  • 举报
回复
hui120687
xiuyu
等级:
可用分等级:乞丐
总技术分:3
总技术分排名:280657
结帖率:3.57%
cpio 2008-11-19
  • 打赏
  • 举报
回复
这个,你需要有个五笔编码表,然后可以在里面查找

.net是不带这东西的
根据你输入的汉子 自动生成五笔代码和拼音代码(简码:取每个汉子的拼音的首字母或者每个汉子的五笔的首字母)本人写了两个存储过程 其实几乎差不多 但是往往啊 会因为一点点小问题导致代码失败 不过 下面的两个存储过程都是成功的 我是因为那么一点点小问题测试了一个上午才搞定了的:对应存储过程 output的参数 一定要先set@=‘’一下才能使用 否则即便是output被赋值了 可以print,但是通过程序代码还是获取不到值的 如下:(具体的在附件里哦,附件里有表数据和存储过程和c#程序代码片段):--drop procedure ChineseCode; ----------一 create procedure ChineseCode(@strkey varchar(30),@rekeysPY varchar(30) output, @rekeysWB varchar(30) output) as declare @keylength int declare @nowstep int declare @temppy varchar(20) declare @tempwb varchar(20) declare @tempkey varchar(4) declare @strpy varchar(30) declare @strwb varchar(30) set @keylength=len(@strkey) set @nowstep=1 set @strpy='' set @strwb='' 。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。 end set @rekeysPY=@strpy set @rekeysWB=@strwb print @rekeysPY+'--'+@rekeysWB end GO --------------------二 --drop procedure ChineseCode; create procedure ChineseCode ( @strkey varchar(30) , @rekeysPY varchar(30) output, @rekeysWB varchar(30) output) as declare @keylength int declare @i int declare @temppy varchar(10) declare @tempwb varchar(10) declare @tempkey varchar(2) set @keylength=len(@strkey) set @i=1 set @temppy='' set @tempwb='' set @rekeysPY='' set @rekeysWB='' begin while (@i<=@keylength) 。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。 print @rekeysPY+'--'+@rekeysWB end GO ----------------三 c#代码 PubClass.ContSql db = new MilkDisPatchingManage.PubClass.ContSql(); SqlCommand sqlcmd = new SqlCommand(); sqlcmd.CommandType = CommandType.StoredProcedure; sqlcmd.CommandText = "ChineseCode"; sqlcmd.Parameters.Add("@strkey", SqlDbType.VarChar, 30); sqlcmd.Parameters["@strkey"].Value=this.textBox1.Text.Trim();//.Direction=ParameterDirection.Input; sqlcmd.Parameters.Add("@rekeysPY", SqlDbType.VarChar,30); sqlcmd.Parameters["@rekeysPY"].Direction = ParameterDirection.Output; sqlcmd.Parameters.Add("@rekeysWB", SqlDbType.VarChar,30); sqlcmd.Parameters["@rekeysWB"].Direction = ParameterDirection.Output; int i= db.ExtCom(sqlcmd); this.textBox2.Text = sqlcmd.Parameters["@rekeysPY"].Value.ToString(); this.textBox3.Text = sqlcmd.Parameters["@rekeysWB"].Value.ToString(); db.CloseCon();

110,550

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧