| DEITY 的个人资料ScorDeity@雾霭无痕.天蝎恶魔照片日志列表 | 帮助 |
|
2月6日 Talking about 朋友 & 兄弟
Quote 朋友 & 兄弟 12月25日 活用设计模式一、 设计模式的隐喻 二、 为什么使用设计模式 僵化性(Rigidity):设计难以改变。
三、 什么时候使用设计模式 代码是设计(这是Martin叔叔强调的一个观点,这个观点可以参考《敏捷软件开发 原则、模式与实践》一书的附录D); 使用设计模式的目的是为了适应未来的变化,变化之所以存在是因为它的不可预知性——如果可以预知,则不能称其为变化。如何判断哪些需求可能变化,哪些需求可能不变,并且在最大程度上保持设计的干净、简单,这是些工艺问题,而不是工程问题。既然是工艺问题,那么就只能给出原则,不能给出标准。使用设计模式的大体原则可能是:对未来极有可能发生变化的问题给出最简单、修改成本最低的解。 五、 讨论几个具体的模式 作者: Martin叔叔没有给出“好”设计的定义。避免了上述症状的设计可能是个符合要求的设计,但未必是“好”设计。软件设计具有“艺术”特征,一个好的设计必定妥当、优雅、满足需求,妥当、优雅、满足需求的设计则未必一定是好的设计。设计模式的使用是为了消除软件设计的恶劣症状,而不是保证给出一个好的、正确的设计。设计模式可能源于人们对软件的恐惧感吧(林星的文章中有句话:方法论源于恐惧)。 CommunityServer 2.xCommunityServer 2.x
是开放源码,其实 CommunityServer 的前身是 ASP.NET Forums,2.3 这个版本是国内人汉化,并做了一些改进。真正官方已经转到 CommunityServer 上面了,CS 2.x 包含了博客、相册、新闻、文件共享、RSS等新功能,功能不少,看看代码,更是多,汉化起来倒不麻烦,改一下 XML 文件就行了,公司产品的社区准备采用 在 CommunityServer 2.x 的基础上来改造。
这个程序是开源的,由很多人做出来的,很规范,可以从这些代码中,学习到很多好的开发思想。这个程序为了使用皮肤,用框架来构建出来了整个应用,确实灵活了很多。另外程序大量使用了控件,包括自定义服务器控件和网页控件,代码都是直接写在 ASPX 文件中,没有使用 CodeBehind 技术,因为网页上面几乎不用写什么代码了,都在自定义服务器控件中了。 接口的终结解释http://club.sooyie.com/blogs/wuzi/archive/2006/10/09/_A563E3538476C87ED37EE389CA91_-.aspx 简单的说接口就是一个契约或者规范。比如遥控器,国家出台了一个国家遥控器规范,明文要求所有的遥控器厂家都要遵循这个规范,如果不遵循规范就不给3C认证标志,就不允许上市出卖。为什么要这个规范呢?大家在时间生活中会经常碰到,甲厂的遥控器不能遥控乙厂的电视,电视遥控器不能遥控其它电器如空调,冰箱!原因是什么呢?是各个遥控器都没有遵循一个规范,电波有长有短,电压有高有低,导致各自为政,四分五裂。 可以想像出国家遥控器标准只是是规定遥控器的一些重要技术指标,比如要发射波应该多长,电压应该多高……但它绝对不会规范出遥控器的材质、形状、重量和颜色,也就是说规范把所有同遥控无关的东西都抛弃了!每个遥控器厂家只要遵循了规范,那么对遥控器可以有任意的诠释。比如A厂可以用铁做,牢固无比,B厂可以用纸,可以任意折叠,anyway,不管用什么做,做出什么样子,只要遵循规范的遥控器就可以遥控所有的电器(当然电器厂家也要遵循一定的规范),甚至可以遥控导弹发射!利害吧,这就是接口的威力! 再详细点,接口就是一个规范,他和具体的实现无关!接口是规范(虚的),他只是一张纸,也是说在实际的使用中接口只有依托一个实现了它的类的实例,才会有意义,如上面的各个厂家做的遥控器产品。每个实现接口的类(厂家)必需实现接口中所有的功能。一旦一个类实现了一个接口,就可说一个类和接口捆绑了(这个很重要,做题目的时候会用到) 来个例子 例子: using System; namespace ConsoleApplication1 class Class1 10月29日 我为什么要来北京 我为什么要来北京?
这个问题很难回答,但是还是要说的:
1.北京的发展比长沙好:
无论从什么方面说,北京的各类方面要比长沙的要好.虽然长沙也在高速发展中.我不在广西,既然要出来闯,那我到北京自然要比在长沙好
2.未玩待续 好久没写MSN了 好久没写了,一方面是客观原因自己没有时间,一方面是自己也不想写,不知道自己要写什么,
虽然很多想法,但是都很不成熟,也没有想写的欲望了
但是我还是想感谢我的女朋友了.如果不是她的支持,我都不知道自己怎么走下去了...............
吴敏来北京了 我的好朋友吴敏来北京了. 我今天看到他的时候,我吓了跳,虽然我知道他比较累,但是看到他那样瘦,我还是不能相信我的眼睛.
我们分开快两个月了,虽然都没有什么联系,但是我相信他的能力,相信他的运气,但是还是没有想到他会那样的累.心里很不是滋味.
高高的颧骨顶他的脸蛋,整个脸都是皮.我想这些都是他通宵所导致的,加上营养不够好,哎,这些都让他累的.有时候我也想.如果是我自己能不能努力到他那样地步恩?
我估计是不行的.我虽然不怕苦,但是这样高强度的和高压力下的通宵.我会受不了的,佩服他了.
1月12日 rosemarry 的鼓励 rosemarry也许是我自己太看不起自己了吧!或许是自己太不愿意让自己从小做起了.或许没有或许..我只是很不甘心为什么我自己不能够做到应该做的时期呢,为什么我的付出没有得到相应的回报呢?很多晚上我都对着月亮一遍一遍的问自己,我没有足够的努力我没有足够的去做么?为什么我不能和其他人一样,只经过一点努力就能达到目标,我相信这个世界上一定会有这样一种方法:任何事情都由他的捷径!我就是不明白为什么我都没有找到呢!!!!!!!!!!!!!!!!!!!! 我对着苍天问:为什么我没有找到!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! baidu一下吧 夜也深了。。 夜也深了。刚刚和老四qq完有点累了.
大学四年就要过去了.怎么也不明白四年自己变了怎样多,回头看看自己的脚步,发现很多做过事情,都是自己曾经深恶痛绝的,或许这个就是人们常常说的人在江湖身不由己,啊! 又给自己找借口了,埃.突然觉得这个世界好像就是这样变化的,
人都可以变的吧,自我安慰一下,堕落的时间越来越多了,这样是不行的 1月6日 计数器1. 在已经登录的状态,点击[编辑您的共享空间] 进入后台。 2. 在当时浏览器地址栏现有的地址后面添上“ &powertoy=sandbox ”然后按回车。进入新的页面(页面看起来没有变化)。 3. 点[自定义]菜单,得到到一个横条式的目录。 再点[模块],得到下拉菜单, 在下拉菜单里选择添加模块 PowerToy: Custom HTML,此时在所编辑页面内会出现一个新的模块。标题名称为 Custom HTML。 拖动这个模块至你想要置放的位置。(通常是页面的最上方) 置放完毕,按上方[保存]按钮,你会发现 “ Custom HTML ”模块已经出现在那里,这时可以在该模块内输入任何 HTML 的脚本代码 4.把您在计数器网站里申请的代码直接输入进去就可以了!
灌水重载区[无须治理]
1月2日 为人处世28条必看 为人处世28条必看1.长相不令人讨厌,如果长得不好,就让自己有才气;如果才气也没有,那就总是微笑。 2.气质是关键。如果时尚学不好,宁愿纯朴。 3.与人握手时,可多握一会儿。真诚是宝。 4.不必什么都用“我”做主语。 5.不要向朋友借钱。 6.不要“逼”客人看你的家庭相册。 7.与人打“的”时,请抢先坐在司机旁。 8.坚持在背后说别人好话,别担心这好话传不到当事人耳朵里。 9.有人在你面前说某人坏话时,你只微笑。 10.自己开小车,不要特地停下来和一个骑自行车的同事打招呼。人家会以为你在炫耀。 11.同事生病时,去探望他。很自然地坐在他病床上,回家再认真洗手。 12.不要把过去的事全让人知道。 13.尊敬不喜欢你的人。 14.对事不对人;或对事无情,对人要有情;或做人第一,做事其次。 15.自我批评总能让人相信,自我表扬则不然。 16.没有什么东西比围观者们更能提高你的保龄球的成绩了。所以,平常不要吝惜你的喝彩声。 17.不要把别人的好,视为理所当然。要知道感恩。 18.榕树上的“八哥”在讲,只讲不听,结果乱成一团。学会聆听。 19.尊重传达室里的师傅及搞卫生的阿姨。 20.说话的时候记得常用“我们”开头。 21.为每一位上台唱歌的人鼓掌。 22.有时要明知故问:你的钻戒很贵吧!有时,即使想问也不能问,比如:你多大了? 23.话多必失,人多的场合少说话。 24.把未出口的“不”改成:“这需要时间”、“我尽力”、“我不确定”、“当我决定后,会给你打电话”…… 25.不要期望所有人都喜欢你,那是不可能的,让大多数人喜欢就是成功的表现。 26.当然,自己要喜欢自己。 27.如果你在表演或者是讲演的时候,如果只要有一个人在听也要用心的继续下去,即使没有人喝采也要演,因为这是你成功的道路,是你成功的摇篮,你不要看的人成功,而是要你成功。 28.如果你看到一个贴子还值得一看的话,那么你一定要回复,因为你的回复会给人继续前进的勇气,会给人很大的激励。同时也会让人感激你。 12月18日 应用程序中 调用web service服务(framework 2.0) 必须注意的问题今天有空随便把那个区位码的东西做成服务罢..但是遇到一个该死的问题.哈哈不过最后还是解决了啦........................................
在应用程序中 调用web service服务(framework 2.0) 得做一个无赖的事情就是把访问权利给 DefaultCredentials 分配给 Web 服务客户端代理的 Credentials 否则,怎么样都不能让你access:
The request failed with HTTP status 401: Access Denied
完整代码如下
localhost.Service service = new global::Character.localhost.Service(); service.Credentials = System.Net.CredentialCache.DefaultCredentials; 在comboBox中添加下拉列表本来以为comboBox的Items可以随便的加上去,随便移除的.今天刚刚做的东西好像有问题:
我想在按下回车键的时候,判断comboBox的items里面有没有selectItem的内容,一般来说就想到:
foreach(Object ob in comboBox_Input.Items)
{ if(ob.ToString().Trim() !=comboBox_Input.SelectedValue.ToString().Trim()) { comboBox_Input.Items.Add(this.comboBox_Input.Text.Trim());
} }
可是碰到错误! 集合已经更改不可以修改了.啊.........奇怪啊..想一下也是.程序碰到一个判断说如果items中没有现在输入的内容.."好我加一个内容进去".....但是程序不干了:"不是把..我..我还没有检测完啊....",晕....好吧只好作一个标志位了.... bool intsert = false
当循环完的时候就看看有没有可以加的,应为一次输入我只加一个object ,如果想个的话..再加一个for吧
完整程序如下:
private void comboBox_Input_KeyUp(object sender, System.Windows.Forms.KeyEventArgs e) { if(e.KeyCode.ToString() == Keys.Enter.ToString()) { if(this.comboBox_Input.Text.Trim() !="") { bool intsert = false ; if(comboBox_Input.Items.Count == 0) { comboBox_Input.Items.Add(this.comboBox_Input.Text.Trim()); } else { foreach(Object ob in comboBox_Input.Items) { if(ob.ToString().Trim() !=comboBox_Input.Text.ToString().Trim()) { intsert = true ; } } if(intsert) { comboBox_Input.Items.Add(this.comboBox_Input.Text.Trim()); } } } } } 区位码(C#)小程序 写了一个区位码(C#)的小程序 主要思想是取得ASCII .
西文使用的编码通常是ASCII码,一个汉字有ASCⅡ码、区位码等与之对应。ASCⅡ码中对应于码值161到254 的字符用于表示汉字,每个汉字用两个ASCⅡ码值对应的字符表示。GB2312-80就是中文的标准编码,即国标码。
区位码是与汉字一一对应的编码,用四位数字表示, 前两位从01 到94称区码,后两位从01到94称位码。 一个汉字的前一半是 ASCⅡ码为“160+区码”的字符,后一半是ASCⅡ码为“160+ 位码”的字符。即是把组成汉字的两个ASCII码各减去160,所得结果组合起来就是区位码。如“国”字,ASCII码减去160后,两部分分别为:25、90,则“国”字的区位码为2590。
因为GB2312最多能表示6763个汉字,所以少用的字是不能找出区位码的.还好国家有一个叫做GBK的东西[通常说的大字符集].不过编码不是10进制的.就有一些不好办了.我也没有时间具体看看怎么回事.有机会谁告诉我一下也行
以下是具体代码
using System;
using System.Drawing; using System.Collections; using System.ComponentModel; using System.Windows.Forms; using System.Data; using System.Text; namespace Character1._1 { /// <summary> /// Form1 的摘要说明。 /// </summary> public class Character : System.Windows.Forms.Form { private System.Windows.Forms.Label label1; private System.Windows.Forms.Label label2; private System.Windows.Forms.Label label3; private System.Windows.Forms.RichTextBox richTextBox_Character; private System.Windows.Forms.TextBox textBox_signe; private System.Windows.Forms.Button button_Transforme_2; private System.Windows.Forms.Button button_Transforme; private System.Windows.Forms.ComboBox comboBox_Input; private System.Windows.Forms.Button button_Character; /// <summary> /// 必需的设计器变量。 /// </summary> private System.ComponentModel.Container components = null; public Character()
{ // // Windows 窗体设计器支持所必需的 // InitializeComponent(); //
// TODO: 在 InitializeComponent 调用后添加任何构造函数代码 // } /// <summary>
/// 清理所有正在使用的资源。 /// </summary> protected override void Dispose( bool disposing ) { if( disposing ) { if (components != null) { components.Dispose(); } } base.Dispose( disposing ); } #region Windows 窗体设计器生成的代码
/// <summary> /// 设计器支持所需的方法 - 不要使用代码编辑器修改 /// 此方法的内容。 /// </summary> private void InitializeComponent() { this.button_Transforme = new System.Windows.Forms.Button(); this.button_Transforme_2 = new System.Windows.Forms.Button(); this.label1 = new System.Windows.Forms.Label(); this.richTextBox_Character = new System.Windows.Forms.RichTextBox(); this.textBox_signe = new System.Windows.Forms.TextBox(); this.label2 = new System.Windows.Forms.Label(); this.label3 = new System.Windows.Forms.Label(); this.comboBox_Input = new System.Windows.Forms.ComboBox(); this.button_Character = new System.Windows.Forms.Button(); this.SuspendLayout(); // // button_Transforme // this.button_Transforme.Location = new System.Drawing.Point(288, 96); this.button_Transforme.Name = "button_Transforme"; this.button_Transforme.TabIndex = 0; this.button_Transforme.Text = "GB2312转换"; this.button_Transforme.Click += new System.EventHandler(this.button_Transforme_Click); // // button_Transforme_2 // this.button_Transforme_2.Location = new System.Drawing.Point(208, 96); this.button_Transforme_2.Name = "button_Transforme_2"; this.button_Transforme_2.TabIndex = 1; this.button_Transforme_2.Text = "GBK转换"; this.button_Transforme_2.Click += new System.EventHandler(this.button_Transforme_2_Click); // // label1 // this.label1.Location = new System.Drawing.Point(16, 56); this.label1.Name = "label1"; this.label1.Size = new System.Drawing.Size(72, 23); this.label1.TabIndex = 3; this.label1.Text = "请输入字符"; this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; // // richTextBox_Character // this.richTextBox_Character.Location = new System.Drawing.Point(88, 160); this.richTextBox_Character.Name = "richTextBox_Character"; this.richTextBox_Character.ReadOnly = true; this.richTextBox_Character.Size = new System.Drawing.Size(296, 136); this.richTextBox_Character.TabIndex = 4; this.richTextBox_Character.Text = ""; // // textBox_signe // this.textBox_signe.Location = new System.Drawing.Point(88, 128); this.textBox_signe.Name = "textBox_signe"; this.textBox_signe.ReadOnly = true; this.textBox_signe.Size = new System.Drawing.Size(288, 21); this.textBox_signe.TabIndex = 5; this.textBox_signe.Text = "因为GB2312最多能表示6763个汉字![现在不能使用...请升级]"; // // label2 // this.label2.Location = new System.Drawing.Point(8, 160); this.label2.Name = "label2"; this.label2.Size = new System.Drawing.Size(72, 23); this.label2.TabIndex = 3; this.label2.Text = "区位码:"; this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; // // label3 // this.label3.Location = new System.Drawing.Point(8, 128); this.label3.Name = "label3"; this.label3.Size = new System.Drawing.Size(72, 23); this.label3.TabIndex = 3; this.label3.Text = "信息提示:"; this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; // // comboBox_Input // this.comboBox_Input.Location = new System.Drawing.Point(96, 56); this.comboBox_Input.Name = "comboBox_Input"; this.comboBox_Input.Size = new System.Drawing.Size(288, 20); this.comboBox_Input.TabIndex = 6; this.comboBox_Input.Text = "梁春华"; this.comboBox_Input.KeyUp += new System.Windows.Forms.KeyEventHandler(this.comboBox_Input_KeyUp); this.comboBox_Input.TextChanged += new System.EventHandler(this.comboBox_Input_TextChanged); this.comboBox_Input.SelectedIndexChanged += new System.EventHandler(this.comboBox_Input_SelectedIndexChanged); // // button_Character // this.button_Character.Location = new System.Drawing.Point(128, 96); this.button_Character.Name = "button_Character"; this.button_Character.TabIndex = 1; this.button_Character.Text = "查看汉字"; this.button_Character.Click += new System.EventHandler(this.button_Character_Click); // // Character // this.AutoScaleBaseSize = new System.Drawing.Size(6, 14); this.ClientSize = new System.Drawing.Size(416, 305); this.Controls.Add(this.comboBox_Input); this.Controls.Add(this.textBox_signe); this.Controls.Add(this.richTextBox_Character); this.Controls.Add(this.label1); this.Controls.Add(this.button_Transforme_2); this.Controls.Add(this.button_Transforme); this.Controls.Add(this.label2); this.Controls.Add(this.label3); this.Controls.Add(this.button_Character); this.Name = "Character"; this.Text = "区位码查看--ScorDeity雾霭无痕"; this.ResumeLayout(false); }
#endregion /// <summary>
/// 应用程序的主入口点。 /// </summary> [STAThread] static void Main() { Application.Run(new Character()); } ///国标码是一个四位十六进制数, ///区位码是一个四位的十进制数,每个国标码或区位码都对应着一个唯一的汉字或符号, ///但因为十六进制数我们很少用到,所以大家常用的是区位码,它的前两位叫做区码,后两位叫做位码。 /// <summary> /// /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void button_Transforme_Click(object sender, EventArgs e) { this.richTextBox_Character.Text = this.CharacterToSmallCharacterNum(this.comboBox_Input.Text.Trim().ToLower()); } private void button_Transforme_2_Click(object sender, EventArgs e) { this.richTextBox_Character.Text = this.CharacterToCharacterNumTow(this.comboBox_Input.Text.Trim().ToLower()); } /// <summary>
/// GB2312 转成数值 /// </summary> /// <param name="characters"></param> /// <returns></returns> private string CharacterToSmallCharacterNum(string characters) { string Num = string.Empty; string charactercode = characters.Trim().Replace(" ",""); if (charactercode != "" || charactercode.Length > 0) { for (int i = 0; i < charactercode.Length; i++) { try { //toolStripProgressBar1.Value = i * 10;
string str = charactercode.Substring(i, 1); ///取出二进制编码 ///System.Text.Encoding.GetEncoding("GB2312"). ///GB2312最多能表示6763个汉字 Encoding gb = System.Text.Encoding.GetEncoding("GB2312"); byte[] characterByte = gb.GetBytes(str.Trim()); //if (characterByte.Length < 2) return "好像你输入错误了吧!";
///分别取出低位和高十六位 转换成为可用的区位码
int lowintcode = characterByte[0]; int hightintcode = -1; if (characterByte.Length >= 2)
{ lowintcode = characterByte[0] - 160 ; hightintcode = characterByte[1] - 160; } ///1区 键盘上没有的各种符号
///2区 各种序号 3区 键盘上的各种符号(按中文方式给出) ///4 -5区 日文字母 6区 希腊字母 ///7区 俄文字母 8区 标识拼音声调的母音及拼音字母名称 ///9区 制表符号 10- 15区 未用 ///16-55区 一级汉字(按拼音字母顺序排列) ///56- 87区 二级汉字(按部首笔划顺序排列) ///88- 94区 自定义汉字 if ( (lowintcode > 10 && lowintcode< 15)) { MessageBox.Show("使用GBK查找!有可能你输入的是繁体字!","警告!"); this.textBox_signe.Text = "使用GBK查找!因为GB2312最多能表示6763个汉字!"; textBox_signe.ForeColor =System.Drawing.Color.Red; Num += "GBK查找为:\n" + CharacterToCharacterNumTow(characters) + "GB2312 查找为:" + "\n"; } if (lowintcode < 0 || hightintcode < -1) { //MessageBox.Show("使用GBK查找!有可能你输入的是繁体字!","警告!"); this.textBox_signe.Text = "使用GBK查找!有可能你输入的是繁体字!--"; Num += "GBK查找为:\n" + CharacterToCharacterNumTow(characters) + "\nGB2312 查找为:" + "\n"; } string lowcode = System.Convert.ToString(lowintcode); string hightcode = System.Convert.ToString(hightintcode)=="-1"?"":System.Convert.ToString(hightintcode); if (lowcode.Length == 1)
{ lowcode = "0" + lowcode; } /// 如果高位没有足够长度的话,加零 if (hightcode.Length == 1) { hightcode = "0" + hightcode; } ///在表示一个汉字的2个字节中,高字节对应编码表中的行号,称为位码;低字节对应编码表中的列号,称为区码 ///区位码: 低位+高位 它的前两位叫做区码,后两位叫做位码 this.textBox_signe.Text ="GB2312 查找为:" + "\n" ; Num += str + ":" + lowcode.ToUpper() + hightcode.ToUpper(); Num += "\n"; } catch (System.Exception e) { MessageBox.Show(e.Message, "警告!!"); } }
} else { this.richTextBox_Character.Text = ""; MessageBox.Show("请输入字符!", "警告!"); } return Num; } /// <summary>
/// 系统转 但是是区位码 /// </summary> /// <param name="characters"></param> /// <returns></returns> private string CharacterToCharacterNumTow(string characters) { string Num = string.Empty; string charactercode = characters.Trim(); //characters = System.Convert. if (charactercode != "" || charactercode.Length > 0) { for (int i = 0; i < charactercode.Length; i++) { try { //toolStripProgressBar1.Value = i*10; string str = charactercode.Substring(i, 1);
///取出二进制编码 byte[] characterByte = System.Text.Encoding.Unicode.GetBytes(str.Trim());
///分别取出低16位和高十六位
string lowcode = System.Convert.ToString(characterByte[0], 16); string hightcode = System.Convert.ToString(characterByte[1], 16);
if (lowcode.Length == 1)
{ lowcode = "0" + lowcode; } /// 如果高位没有足够长度的话,加零 if (hightcode.Length == 1) { hightcode = "0" + hightcode; } ///区位码: 低位+高位 this.textBox_signe.Text = "GBK查找为:"; Num += str + ":" + lowcode.ToUpper() + hightcode.ToUpper(); Num += "\n"; } catch (System.Exception e) { MessageBox.Show(e.Message, "警告!!!!"); } }
} else { MessageBox.Show("请输入字符!", "警告!"); } return Num; } private string NumTOCharacter(string num)
{ int codenum = 0 ; string character = ""; string[] numarry = num.Trim().Replace(",",".").Split(new char[] { '.'});
for (int i = 0; i < numarry.Length; i++)
{ if (numarry[i].Length % 4 != 0)
{ MessageBox.Show("输入的数值不对,必须是四个一组!", "警告!"); } try { codenum= System.Convert.ToInt32(numarry[i].ToString()); } catch (System.Exception e) { MessageBox.Show("请输入数字:"+e.Message, "警告!"); } }
try { for (int i = 0; i < numarry.Length; i++) { byte[] characterbyte = new byte[2]; int lowcode = System.Convert.ToInt32(numarry[i].Substring(0, 2))+160; int hightcode = System.Convert.ToInt32(numarry[i].Substring(2, 2))+160; characterbyte[0] = System.Convert.ToByte(lowcode.ToString(),10); characterbyte[1] = System.Convert.ToByte(hightcode.ToString(),10); //characterbyte[0] = System.Convert.ToByte(lowcode, 16);
//characterbyte[1] = System.Convert.ToByte(hightcode, 16); Encoding gb =System.Text.Encoding.GetEncoding("GB2312"); character += gb.GetString(characterbyte); //character = System.Text.Encoding.ASCII.GetString(characterbyte); //character += character; } } catch (System.Exception e) { MessageBox.Show("错误!"+e.Message, "警告!!!!"); } return character; } private void textBox_InputCharacter_TextChanged(object sender, System.EventArgs e)
{ this.richTextBox_Character.Text = this.CharacterToSmallCharacterNum(this.comboBox_Input.Text.Trim().ToLower()); } private void comboBox_Input_TextChanged(object sender, System.EventArgs e)
{ this.richTextBox_Character.Text = this.CharacterToSmallCharacterNum(this.comboBox_Input.Text.Trim().TrimEnd().ToLower()); } private void comboBox_Input_KeyUp(object sender, System.Windows.Forms.KeyEventArgs e)
{ if(e.KeyCode.ToString() == Keys.Enter.ToString()) { if(this.comboBox_Input.Text.Trim() !="") { bool intsert = false ; if(comboBox_Input.Items.Count == 0) { comboBox_Input.Items.Add(this.comboBox_Input.Text.Trim()); } else { foreach(Object ob in comboBox_Input.Items) { if(ob.ToString().Trim() !=comboBox_Input.Text.ToString().Trim()) { intsert = true ; } } if(intsert) { comboBox_Input.Items.Add(this.comboBox_Input.Text.Trim()); } } } } } private void comboBox_Input_SelectedIndexChanged(object sender, System.EventArgs e)
{ this.richTextBox_Character.Text = this.CharacterToSmallCharacterNum(this.comboBox_Input.Text.Trim().ToLower()); } private void button_Character_Click(object sender, System.EventArgs e)
{ this.textBox_signe.Text = "你要查找的汉字是 :"; this.richTextBox_Character.Text = NumTOCharacter(this.comboBox_Input.Text.Trim()); } } } 11月30日 最近做了自己的一个总结,志在激励自己要好好加油!巧巧给我的总结:
1. 对某事一感兴趣就停不下手,你事情不做完会通宵把它做掉[优点]做事情没有时间观念[缺点]; 2. 要学着白天专心点【缺点】 3. 当然是对我好拉 ; 4. 不吃零食,勤俭节约,不会乱花钱 5. 孝敬父母,理解家庭困难,心疼父母操劳 6. 敢于承认自己的能力, 7. 要相信自己能行的哦 【没有信心】 8. 做事情没有层次。没有条理,不分主次; 9. 可以和同事和睦相处 ; 10.一起做事不怕吃亏,对那些不好做事的可以忍在心理,宽努他的愚蠢烂托行为,为大局着想 11.合作时尽自己的力去做,没有偷懒行为,别人有问题时热心帮忙。 12. 不会高傲自大,瞧不起他人 13.太色了。 14.还是的太色了,对女孩子什麽事都好奇. 15.要注意公共场合哦。 16.学会对我发脾气了; 17。理想远大,但太大拉,要切合实际 [呵呵,那个男人没有远大的理想。。。这个。。一半对一半吧] 18。不到最后时刻永不放弃,百折不挠; 19. 有责任感,但不要把所有事都扛到自己头上,还有我呢[这个小鬼。。] 20. 重视家庭 宛刚给我的总结: 1.毅力
2.重构的勇气(敢于打破);
3.学习意识很强,危机意识强;
4.团队合作意识强(很快适应别人的代码,并快速实现调用);
5.不会眼高手底(比如说网站的硬件维护,给机子装系统等,这些我都没去搞) ;
这个是测试记忆力的结论: 你的记性不好也不坏,真是“一目十行,过目即忘”!但是偏偏出丑的事儿你忘不了,真难为 情哦!另,你的记忆力有一项特别敏感之处,就是对人的相貌记得特别清楚。
我的想法: 还好。基本上正确吧 。但是好像对人的相貌记忆好像不是特别清楚吧。。。我 很多时候就不太记得人家长的什么样子。
这个是对于和人的亲密关系的测试结果:
任何人也读过寓言故事,大盗总爱将宝藏藏于大树下,而你这样做就等于打算把宝藏分给别人 似的。 对于伴侣来说,你的举动非常容易掌握;什么爱吃巨无霸配芥茉酱,爱叫椰香珍珠奶茶加胚芽,
你早已对他(她)说过。在他(她)面前,你已没有半点私隐。 除了生活小节,你亦喜欢不知不觉地向他(
她)炫耀自己的优点,都会成为你跟伴侣的话题。
我的想法:看来的确是这样。虽然和天蝎座的分析不对头。但是总的来说是这样的。 人际交往能力的测试结果:
也许是由于羞怯或少言寡语的性格,你没有表现出足够的自信。当你应该以轻松热情的面貌出现时 ,你却常常显得过于局促不安。
我现在最担心的事情测试结果:
电话的铃声,正代表你的事业。迫在眉睫的要事正待你去解决,才会让你听到铃声,你此刻不 是正为着那些燃眉之急的计划草案尚无法提出而困扰着吗?换句话说,你最想忘掉的,便是手上的工作
了。
我的想法:呵呵 我现在的事业正在面对最夸张的挑战,四级没有过。。毕业有问题哦。。。 但是我现在想写程序。。马上提升自己。。。。。因为宛刚已经这样做了。。。 消费心理的测试结果: 你认为赚钱的目的就是消费,所以只要渴望拥有的东西均不会计金额的高低将它买下,实在蛮浪费 的,这或许也是你的虚荣心作崇吧!如果不节制一点,等到支出大于收入时,想要收敛就很难了。
内心性格测试结果[1]: 你对自己很有爱心,当现实的力量大过内心的标准时,你通常很快地屈服,避免自己内外受煎熬,这 种人做事的确是圆滑了些,会在这个现实的社会里,得到一片生存的天地。
我的想法:虽然我不认为自己对自己有爱心。。因为我经常虐待自己[通宵。。不做身体锻炼, 不能准时喝茶。。。家规来着的]
企图心测试结果: 这类人竞争性不强,但并不是没有企图心,很少欣羡别人的成就,也不追逐别人眼中所谓的成就。所 以不管别人要的是什么,在人生的跑道上,他一直知道自己要的到底是什么,一步步向著自我追求的目
标前进.
我的想法: 这个是娃娃测试的结果。。我没有娃娃。。。这个大概不准吧。不过我现在自己都 不太明白自己要什么。。。不过好想自己成为英雄一级的人物。。
我的职业取向结果和分析: 你的艺术取向得分为18分;研究取向得分为26分 艺术取向:6-12分为较低,13-24分为中等,25-30分为较高; 研究取向:6-12分为较低,13-22分为中等,23-30分为较高; 艺术取向的个体喜欢艺术性工作,如音乐、舞蹈、歌唱等。这种取向类型的人往往具有某些艺术技能 ,喜欢创造性的工作,富于想象力。这类人通常喜欢同观念而不是事务打交道。他们较开放、好想象、
独立、有创造性。如果他们没有成为艺术家,仍然能够选择那些能发挥其特长的工作。
研究取向的个体喜欢各种研究性工作,如实验室研究人员、医师、产品检查员等。这类人通常具有较
高的数学和科学研究能力,喜欢独立工作,喜欢解决问题,喜欢通观念而不是同仁或事务打交道。他们
逻辑性强、好奇、聪明、仔细、独立、安详、俭朴。
我的想法:还好我是研究型号的人。。。不过可能从小就受到音乐的熏陶就使自己的艺术趋向不 低吧。
我的潜意识中自己最缺乏的是:经济能力 我的想法:呵呵。。这个。。。的确。。我妈妈一问起我有没有钱的时候,我最恼火了。看来就是这 样
。
11月11日 选择什么样的DOCTYPE前言大家好!这个系列文章是按阿捷自己制作这个站点的过程编写的。之前阿捷也一直没有制作过一个真正符合web标准的网站。现在边参考国外资料边制作,同时把过程中的心得和经验记录下来,希望对大家有点帮助。好了,让我们开始吧 第一天开始制作符合标准的站点,第一件事情就是声明符合自己需要的DOCTYPE。 查看本站首页原代码,可以看到第一行就是: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">打开一些符合标准的站点,例如著名web设计软件开发商Macromedia,设计大师Zeldman的个人网站,会发现同样的代码。而另一些符合标准的站点(例如k10k.net)的代码则如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd"> 那么这些代码有什么含义?一定要放置吗? 什么是DOCTYPE上面这些代码我们称做DOCTYPE声明。DOCTYPE是document type(文档类型)的简写,用来说明你用的XHTML或者HTML是什么版本。 其中的DTD(例如上例中的xhtml1-transitional.dtd)叫文档类型定义,里面包含了文档的规则,浏览器就根据你定义的DTD来解释你页面的标识,并展现出来。 要建立符合标准的网页,DOCTYPE声明是必不可少的关键组成部分;除非你的XHTML确定了一个正确的DOCTYPE,否则你的标识和CSS都不会生效。 XHTML 1.0 提供了三种DTD声明可供选择:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd"> 我们选择什么样的DOCTYPE理想情况当然是严格的DTD,但对于我们大多数刚接触web标准的设计师来说,过渡的DTD(XHTML 1.0 Transitional)是目前理想选择(包括本站,使用的也是过渡型DTD)。因为这种DTD还允许我们使用表现层的标识、元素和属性,也比较容易通过W3C的代码校验。 注:上面说的"表现层的标识、属性"是指那些纯粹用来控制表现的tag,例如用于排版的表格、背景颜色标识等。在XHTML中标识是用来表示结构的,而不是用来实现表现形式,我们过渡的目的是最终实现数据和表现相分离。 打个比方:人体模特换衣服。模特就好比数据,衣服则是表现形式,模特和衣服是分离的,这样你就可以随意换衣服。而原来HTML4中,数据和表现是混杂在一起的,要一次性换个表现形式非常困难。呵呵,有点抽象了,这个概念需要我们在应用过程中逐步领会。 补充DOCTYPE声明必须放在每一个XHTML文档最顶部,在所有代码和标识之上。
这个不是我写的 什么是名字空间DOCTYPE声明好以后,接下来的代码是: <html xmlns="http://www.w3.org/1999/xhtml" lang="gb2312">通常我们HTML4.0的代码只是<html>,这里的"xmlns"是什么呢? 这个"xmlns"是XHTML namespace的缩写,叫做"名字空间"声明。名字空间是什么作用呢?阿捷自己的理解是: 由于xml允许你自己定义自己的标识,你定义的标识和其他人定义的标识有可能相同,但表示不同的意义。当文件交换或者共享的时候就容易产生错误。为了避免这种错误发生,XML采用名字空间声明,允许你通过一个网址指向来识别你的标识。例如: 小王和小李都定义了一个<book>标识,如果小王的名字空间是"http://www.xiaowang.com",小李的名字空间是"http://www.xiaoli.com",那么当两个文档交换数据时,也不会混淆<book>标识,因为它属于不同的名字空间。 更通俗的解释是:名字空间就是给文档做一个标记,告诉别人,这个文档是属于谁的。只不过这个"谁"用了一个网址来代替。 XHTML是HTML向XML过渡的标识语言,它需要符合XML文档规则,因此也需要定义名字空间。又因为XHTML1.0不能自定义标识,所以它的名字空间都相同,就是"http://www.w3.org/1999/xhtml"。如果你还不太理解也不要紧,目前阶段我们只要照抄代码就可以了。 后面的lang="gb2312",指定你的文档用简体中文。 |
|
|