WinForm BaseClass类常用通用方法

  1 using System;
  2 using System.Collections.Generic;
  3 using System.Linq;
  4 using System.Text;
  5 using System.Data;
  6 using System.Security.Cryptography;
  7
  8 namespace HRPOWER.BLL
  9 {
 10     /// <summary>
 11     /// 业务逻辑层基类
 12     /// </summary>
 13     public class BaseClass
 14     {
 15         /// <summary>
 16         /// 屏幕宽度
 17         /// </summary>
 18         private static Decimal WidthPercent;
 19
 20         /// <summary>
 21         /// 屏幕高度
 22         /// </summary>
 23         private static Decimal HeightPercent;
 24
 25
 26         /// <summary>
 27         /// 根据列名字符串数组,创建自定义DataTable
 28         /// </summary>
 29         /// <param name="sList">列名字符串数组</param>
 30         /// <returns>DataTable</returns>
 31         public static DataTable CreateSelfDataTable(String[] sList)
 32         {
 33             DataTable _dtSelf = new DataTable();
 34
 35             foreach (String s in sList)
 36             {
 37                 _dtSelf.Columns.Add(s);
 38             }
 39             _dtSelf.AcceptChanges();
 40
 41             return _dtSelf;
 42         }
 43         /// <summary>
 44         /// 消息提示,默认为OK按键的Information提示信息
 45         /// </summary>
 46         /// <param name="sMessage">提示信息</param>
 47         /// <param name="sTitle">信息标题</param>
 48         /// <returns>DialogResult</returns>
 49         public static System.Windows.Forms.DialogResult DialogMessage(String sMessage, String sTitle)
 50         {
 51             return DialogMessage(sMessage,
 52                                  sTitle,
 53                                  System.Windows.Forms.MessageBoxButtons.OK,
 54                                  System.Windows.Forms.MessageBoxIcon.Information);
 55         }
 56         /// <summary>
 57         /// 消息提示,默认为OK按键的Information提示信息
 58         /// </summary>
 59         /// <param name="sMessage">提示信息</param>
 60         /// <param name="sTitle">信息标题</param>
 61         /// <param name="mbbButtons">MessageBoxButtons枚举</param>
 62         /// <returns>DialogResult</returns>
 63         public static System.Windows.Forms.DialogResult DialogMessage(String sMessage,
 64                                                                       String sTitle,
 65                                                                       System.Windows.Forms.MessageBoxButtons mbbButtons)
 66         {
 67             return DialogMessage(sMessage, sTitle, mbbButtons, System.Windows.Forms.MessageBoxIcon.Information);
 68         }
 69         /// <summary>
 70         /// 消息提示,默认为OK按键的Information提示信息
 71         /// </summary>
 72         /// <param name="sMessage">提示信息</param>
 73         /// <param name="sTitle">信息标题</param>
 74         /// <param name="mbbButtons">MessageBoxButtons枚举</param>
 75         /// <param name="mbiIcon">MessageBoxIcon枚举</param>
 76         /// <returns>DialogResult</returns>
 77         public static System.Windows.Forms.DialogResult DialogMessage(String sMessage,
 78                                                                       String sTitle,
 79                                                                       System.Windows.Forms.MessageBoxButtons mbbButtons,
 80                                                                       System.Windows.Forms.MessageBoxIcon mbiIcon)
 81         {
 82             return System.Windows.Forms.MessageBox.Show(sMessage, sTitle, mbbButtons, mbiIcon);
 83         }
 84         /// <summary>
 85         /// 加密一个字符串
 86         /// </summary>
 87         /// <param name="vStringToEncrypt">待要去加密的字符串</param>
 88         /// <returns>返回一个加密后的字符串</returns>
 89         public static String Encrypt(String vStrToEncrypt)
 90         {
 91             byte[] key = { };
 92             byte[] IV = { 10, 20, 30, 40, 50, 60, 70, 80 };
 93             byte[] inputByteArray;
 94             String vEncryptKey = "[email protected]#$1234";
 95             try
 96             {
 97                 key = System.Text.Encoding.UTF8.GetBytes(vEncryptKey.Substring(0, 8));
 98                 DESCryptoServiceProvider des = new DESCryptoServiceProvider();
 99                 inputByteArray = System.Text.Encoding.UTF8.GetBytes(vStrToEncrypt);
100                 System.IO.MemoryStream ms = new System.IO.MemoryStream();
101                 CryptoStream cs = new CryptoStream(ms, des.CreateEncryptor(key, IV), CryptoStreamMode.Write);
102                 cs.Write(inputByteArray, 0, inputByteArray.Length);
103                 cs.FlushFinalBlock();
104
105                 return Convert.ToBase64String(ms.ToArray());
106             }
107             catch (System.Exception ex)
108             {
109                 throw ex;
110             }
111         }
112         /// <summary>
113         /// 对一进行加密的字符串进行解密
114         /// </summary>
115         /// <param name="vStringToDecrypt">待要去解密的字符串</param>
116         /// <returns>返回一个明文</returns>
117         public static String Decrypt(String vStrToDecrypt)
118         {
119             vStrToDecrypt = vStrToDecrypt.Trim().Replace(" ", "+");   //process blank char for the encrypt method.
120             byte[] key = { };
121             byte[] IV = { 10, 20, 30, 40, 50, 60, 70, 80 };
122             byte[] inputByteArray = new byte[vStrToDecrypt.Length];
123             String vDecryptKey = "[email protected]#$1234";
124             try
125             {
126                 key = System.Text.Encoding.UTF8.GetBytes(vDecryptKey.Substring(0, 8));
127                 DESCryptoServiceProvider des = new DESCryptoServiceProvider();
128                 inputByteArray = Convert.FromBase64String(vStrToDecrypt);
129
130                 System.IO.MemoryStream ms = new System.IO.MemoryStream();
131                 CryptoStream cs = new CryptoStream(ms, des.CreateDecryptor(key, IV), CryptoStreamMode.Write);
132                 cs.Write(inputByteArray, 0, inputByteArray.Length);
133                 cs.FlushFinalBlock();
134
135                 System.Text.Encoding encoding = System.Text.Encoding.UTF8;
136                 return encoding.GetString(ms.ToArray());
137             }
138             catch (System.Exception ex)
139             {
140                 throw ex;
141             }
142         }
143         /// <summary>
144         /// 定义一个操作类型
145         /// ADD表示新增,EDIT表示修改,DEL表示删除
146         /// </summary>
147         public enum OperationType
148         {
149             ADD = 0,
150             EDIT = 1,
151             DEL = 2
152         }
153
154         /// <summary>
155         /// 定义照片类型
156         /// </summary>
157         public enum PictureSize
158         {
159             /// <summary>
160             /// 一代身份证
161             /// </summary>
162             ID_CARD1 = 1,
163
164             /// <summary>
165             /// 驾驶证
166             /// </summary>
167             DRIVER_CARD = 2,
168
169             /// <summary>
170             /// 护照
171             /// </summary>
172             PASSPORT_CARD = 3,
173
174             /// <summary>
175             /// 二代身份证
176             /// </summary>
177             ID_CARD2 = 4,
178
179             /// <summary>
180             /// 二代身份证背面,或类似尺寸证件的拍照使用
181             /// </summary>
182             ID_CARD2_BOTTOM = 5,
183
184             /// <summary>
185             /// 台胞证
186             /// </summary>
187             TAIWAN_CARD = 6,
188
189             /// <summary>
190             /// 港澳通行证
191             /// </summary>
192             HKMACAO_CARD = 7,
193
194             /// <summary>
195             /// 广东省居住证
196             /// </summary>
197             RESIDENCE_CARD = 9,
198
199             /// <summary>
200             /// 军官证
201             /// </summary>
202             ARMY_CARD = 103,
203
204             /// <summary>
205             /// 户口本
206             /// </summary>
207             HOUSEHOLD_CARD = 106
208         }
209
210         /// <summary>
211         /// 定义照片颜色类型
212         /// </summary>
213         public enum PictureColor
214         {
215             /// <summary>
216             /// 黑白照
217             /// </summary>
218             WHITEBLACK = 0,
219             /// <summary>
220             /// 彩色照
221             /// </summary>
222             FULLCOLOR = 1
223         }
224
225         /// <summary>
226         /// 定义绑定控件数据员类型
227         /// </summary>
228         public enum DataSourceType
229         {
230             /// <summary>
231             /// 表示DataTable形式的数据员
232             /// </summary>
233             DataCollection = 0,
234             /// <summary>
235             /// 表示Items形式数据员
236             /// </summary>
237             DataItems = 1
238         }
239         /// <summary>
240         /// 加载一个“请选择”值到Combobox控件
241         /// </summary>
242         /// <param name="dtSource">Combobox控件数据源</param>
243         /// <param name="sValue">ValueMember字段</param>
244         /// <param name="sDisplay">DisplayMember字段</param>
245         /// <returns></returns>
246         public static DataTable LoadInvalidValueToCombobox(DataTable dtSource, String sValue, String sDisplay)
247         {
248             DataRow _drNew = dtSource.NewRow();
249             _drNew[sValue] = 0;
250             _drNew[sDisplay] = "请选择";
251             dtSource.Rows.InsertAt(_drNew, 0);
252             dtSource.AcceptChanges();
253
254             return dtSource;
255         }
256         /// <summary>
257         /// 加载一个“全部单位”值到Combobox控件
258         /// </summary>
259         /// <param name="dtSource">Combobox控件数据源</param>
260         /// <param name="sValue">ValueMember字段</param>
261         /// <param name="sDisplay">DisplayMember字段</param>
262         /// <returns></returns>
263         public static DataTable LoadInvalidValueToCombobox1(DataTable dtSource, String sValue, String sDisplay)
264         {
265             DataRow _drNew = dtSource.NewRow();
266             _drNew[sValue] = 0;
267             _drNew[sDisplay] = "全部单位";
268             dtSource.Rows.InsertAt(_drNew, 0);
269             dtSource.AcceptChanges();
270
271             return dtSource;
272         }
273
274         /// <summary>
275         /// 验证字符串是否为正整数
276         /// </summary>
277         /// <param name="str"></param>
278         /// <returns></returns>
279         public static bool IsNumeric(string str)
280         {
281             System.Text.RegularExpressions.Regex reg1 = new System.Text.RegularExpressions.Regex(@"^[0-9]*[1-9][0-9]*$");
282             return reg1.IsMatch(str);
283         }
284         /// <summary>
285         /// 验证字符串是否为0或正浮点类型
286         /// </summary>
287         /// <param name="str"></param>
288         /// <returns></returns>
289         public static bool isDouble(String str)
290         {
291             //正则表达式验证,返回一个bool类型
292             bool isReturn = false;
293
294             try
295             {
296                 System.Text.RegularExpressions.Regex reg1 = new System.Text.RegularExpressions.Regex(@"^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$");
297                 if (reg1.IsMatch(str) == true || IsNumeric(str) == true) isReturn = true; ;
298             }
299             catch
300             {
301                 isReturn = false;
302             }
303
304             return isReturn;
305         }
306         /// <summary>
307         /// 验证固定电话号码
308         /// </summary>
309         /// <param name="str"></param>
310         /// <returns></returns>
311         public static bool isTel(String str)
312         {
313             System.Text.RegularExpressions.Regex reg1 = new System.Text.RegularExpressions.Regex(@"^(\d{3,4}-)?\d{7,8}$");
314             return reg1.IsMatch(str);
315
316         }
317         /// <summary>
318         /// 验证手机号码
319         /// </summary>
320         /// <param name="str"></param>
321         /// <returns></returns>
322         public static bool isMobile(String str)
323         {
324             System.Text.RegularExpressions.Regex reg1 = new System.Text.RegularExpressions.Regex(@"^[1][3-8]\d{9}$");
325             return reg1.IsMatch(str);
326
327         }
328         /// <summary>
329         /// 验证数字
330         /// </summary>
331         /// <param name="str"></param>
332         /// <returns></returns>
333         public static bool isNumber(String str)
334         {
335             System.Text.RegularExpressions.Regex reg1 = new System.Text.RegularExpressions.Regex(@"^\d+$");
336             return reg1.IsMatch(str);
337
338         }
339         /// <summary>
340         /// 验证邮政编码
341         /// </summary>
342         /// <param name="str"></param>
343         /// <returns></returns>
344         public static bool isPost(String str)
345         {
346             System.Text.RegularExpressions.Regex reg1 = new System.Text.RegularExpressions.Regex(@"^\d{6}$");
347             return reg1.IsMatch(str);
348
349         }
350         /// <summary>
351         /// 验证邮件地址
352         /// </summary>
353         /// <param name="str"></param>
354         /// <returns></returns>
355         public static bool isEmail(String str)
356         {
357             System.Text.RegularExpressions.Regex reg1 = new System.Text.RegularExpressions.Regex(@"^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$");
358             return reg1.IsMatch(str);
359
360         }
361
362         /// <summary>
363         /// 验证IP地址
364         /// </summary>
365         /// <param name="str"></param>
366         /// <returns></returns>
367         public static bool isIP(String str)
368         {
369             return System.Text.RegularExpressions.Regex.IsMatch(str,
370                                                                 @"^(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])){3}$");
371         }
372
373         /// <summary>
374         /// 验证输入字符串只能为数字或字母
375         /// </summary>
376         /// <param name="str"></param>
377         /// <returns></returns>
378         public static bool IsNumberOrChar(String str)
379         {
380             return System.Text.RegularExpressions.Regex.IsMatch(str, "^([0-9]|[A-Z]|[a-z])+$");
381         }
382
383         //object类型转十进制
384         public static decimal ConvertoDecimal(object o)
385         {
386             decimal number = 0;
387             try
388             {
389                 if (o != null && o.ToString() != "")
390                     number = Convert.ToDecimal(o);
391
392             }
393             catch
394             {
395                 number = 0;
396             }
397
398             return number;
399         }
400
401         //判断是否字符串是否为日期类型
402         public static DateTime isDataTime(string strDate)
403         {
404             DateTime dtDate;
405
406             if (DateTime.TryParse(strDate, out dtDate))
407             {
408                 return Convert.ToDateTime(strDate);
409             }
410             else
411             {
412                 return Convert.ToDateTime("1753-1-1");
413             }
414
415         }
416
417
418         /// <summary>
419         /// 生成GUID码
420         /// </summary>
421         /// <returns></returns>
422         public static string getGUID()
423         {
424             System.Guid guid = new Guid();
425             guid = Guid.NewGuid();
426             string str = guid.ToString();
427             return str;
428         }
429         /// <summary>
430         /// 判断文件夹是否存在,不存在就创建
431         /// </summary>
432         /// <param name="sFileFolder">文件夹路径</param>
433         /// <returns>文件夹路径</returns>
434         public static string GetFileFolder(String sFileFolder)
435         {
436             if (!System.IO.Directory.Exists(sFileFolder))
437             {
438                 System.IO.Directory.CreateDirectory(sFileFolder);
439             }
440             return sFileFolder;
441         }
442         /// <summary>
443         /// 生成一个错误日志
444         /// </summary>
445         /// <param name="sErrMsg">错误信息</param>
446         public static void LogErrorLog(string sErrMsg)
447         {
448             String _sFolder = System.Configuration.ConfigurationManager.AppSettings["Error_Log"];
449
450             _sFolder = GetFileFolder(_sFolder);
451             String _sFile = String.Format("{0}{1}.txt", _sFolder, DateTime.Now.ToString("yyyyMMdd"));
452
453             System.IO.FileInfo _fiFile = new System.IO.FileInfo(_sFile);
454             System.IO.StreamWriter _swTxt;
455
456             if (!_fiFile.Exists)
457             {
458                 _swTxt = _fiFile.CreateText();
459             }
460             else
461             {
462                 _swTxt = _fiFile.AppendText();
463             }
464
465             _swTxt.WriteLine(String.Format("{0}-----{1}", DateTime.Now.ToString("HH:mm:ss"), sErrMsg));
466             _swTxt.Close();
467         }
468
469         Boolean isFind = false;                 //查找文件是否找到标识位
470         /// <summary>
471         /// 查找指定文件,返回查找文件路径
472         /// </summary>
473         /// <param name="sFileName">待查找的文件名</param>
474         /// <returns>返回查找文件路径</returns>
475         public static String SearchFile(String sFileName)
476         {
477             System.IO.DriveInfo[] driList = System.IO.DriveInfo.GetDrives();
478             BaseClass _bc = new BaseClass();
479
480             String _sFileName = String.Empty;
481
482             foreach (System.IO.DriveInfo dri in driList)
483             {
484                 _sFileName = _bc.FindFile(dri.RootDirectory, sFileName);
485                 String _tmp = _sFileName.Substring(_sFileName.LastIndexOf(@"\") + 1);
486
487                 if (_tmp == sFileName)
488                 {
489                     break;
490                 }
491             }
492
493             return _sFileName;
494         }
495
496         private String FindFile(System.IO.DirectoryInfo diDirectory, String sFileName)
497         {
498             String sFindFile = String.Empty;
499             try
500             {
501                 foreach (System.IO.FileInfo fi in diDirectory.GetFiles())
502                 {
503                     if (fi.Name == sFileName)
504                     {
505                         sFindFile = fi.FullName;
506                         isFind = true;
507                         break;
508                     }
509                 }
510
511                 foreach (System.IO.DirectoryInfo di in diDirectory.GetDirectories())
512                 {
513                     if (!isFind)
514                         sFindFile = FindFile(di, sFileName);
515                     else
516                         break;
517                 }
518             }
519             catch
520             {
521                 throw new System.IO.FileNotFoundException("文件不能找到");
522             }
523
524             return sFindFile;
525         }
526         /// <summary>
527         /// 根据屏幕分辨率自动调整控件位置与大小
528         /// </summary>
529         /// <param name="cContainer">要调整的控件</param>
530         /// <param name="ScreenWidth">当前显示器分辨率宽度</param>
531         /// <param name="ScreenHeight">当前显示器分辨率高度</param>
532         public static void AutoChangeControlSizeByScreen(System.Windows.Forms.Control cContainer,
533                                                          int ScreenWidth,
534                                                          int ScreenHeight)
535         {
536             cContainer.SuspendLayout();
537             //显示屏大于1280或1024不处理
538             if (ScreenWidth > 1280 || ScreenHeight > 1024)
539             {
540                 WidthPercent = 1;
541                 HeightPercent = 1;
542             }
543             else
544             {
545                 WidthPercent = Math.Round((decimal)ScreenWidth / 1280, 4);
546                 HeightPercent = Math.Round((decimal)ScreenHeight / 1024, 4);
547             }
548             //处理传过来控件本身等比缩放
549             cContainer.Left = (int)Math.Ceiling((decimal)cContainer.Left * WidthPercent);
550             cContainer.Top = (int)Math.Ceiling((decimal)cContainer.Top * HeightPercent);
551             cContainer.Width = (int)Math.Ceiling((decimal)cContainer.Width * WidthPercent);
552             cContainer.Height = (int)Math.Ceiling((decimal)cContainer.Height * HeightPercent);
553             ChangeControl(cContainer);
554             cContainer.ResumeLayout();
555         }
556
557         private static void ChangeControl(System.Windows.Forms.Control cContainer)
558         {
559             foreach (System.Windows.Forms.Control c in cContainer.Controls)
560             {
561                 c.Left = (int)Math.Ceiling((decimal)c.Left * WidthPercent);
562                 c.Top = (int)Math.Ceiling((decimal)c.Top * HeightPercent);
563                 c.Width = (int)Math.Ceiling((decimal)c.Width * WidthPercent);
564                 c.Height = (int)Math.Ceiling((decimal)c.Height * HeightPercent);
565                 c.Font = new System.Drawing.Font("微软雅黑", c.Font.Size * (float)((HeightPercent + WidthPercent) / 2));
566
567                 if (c.HasChildren)
568                 {
569                     ChangeControl(c);
570                 }
571             }
572         }
573
574         /// <summary>
575         /// 统一设置字体为微软雅黑12pt
576         /// </summary>
577         /// <param name="cContainer">要调整的控件</param>
578         public static void ChangeFont(System.Windows.Forms.Control cContainer)
579         {
580             foreach (System.Windows.Forms.Control c in cContainer.Controls)
581             {
582                 c.Font = new System.Drawing.Font("微软雅黑", 12);
583                 if (c.HasChildren) ChangeFont(c);
584             }
585         }
586
587         /// <summary>
588         /// 判断文件夹是否存在,不存在创建
589         /// 同时返回文件夹路径
590         /// </summary>
591         /// <param name="sFolderPath">文件夹绝对路径</param>
592         /// <returns></returns>
593         public static String IsFolderExist(String sFolderPath)
594         {
595             if (System.IO.Directory.Exists(sFolderPath) == false)
596             {
597                 System.IO.Directory.CreateDirectory(sFolderPath);
598             }
599             return sFolderPath;
600         }
601
602         /// <summary>
603         /// 导出Excel的文件名称
604         /// </summary>
605         /// <param name="titleName">导出标题名称</param>
606         /// <param name="suffixName">导出序列号(SN)</param>
607         /// <returns></returns>
608         public static String ExcelFileName(String titleName, String suffixName)
609         {
610             String strName;
611             if (String.IsNullOrEmpty(suffixName))
612             {
613                 strName = DateTime.Now.ToString("yyyyMMdd_HHmmss") + "_" + titleName;
614             }
615             else
616             {
617                 strName = DateTime.Now.ToString("yyyyMMdd_HHmmss") + "_" + titleName + "_" + suffixName;
618             }
619             return strName;
620         }
621
622         /// <summary>
623         /// 导出Excel的文件名称
624         /// </summary>
625         /// <param name="titleName">导出标题名称</param>
626         /// <returns></returns>
627         public static String ExcelFileName(String titleName)
628         {
629             return ExcelFileName(titleName, String.Empty);
630         }
631     }
632 }

时间: 2024-10-12 19:14:02

WinForm BaseClass类常用通用方法的相关文章

Calendar类常用需求方法

经常处理一些日期相关的信息,Calendar类是处理日期的常用类,写下几个方法,不用重复造轮子了. 1.求上一天,下一天的日期 Date now = new Date();Calendar c = Calendar.getInstance();c.setTime(now);c.add(Calendar.DAY_OF_MONTH, -1); // 下一天,上一天-1改为1Date yesterday = c.getTime();SimpleDateFormat sdf = new SimpleDa

Spring JdbcTemplate类常用的方法

execute(String  sql) 可执行任何sql语句,但返回值是void,所以一般用于数据库的新建.修改.删除和数据表记录的增删改. int  update(String sql) int  update(String sql, Object...args) 增删改,args传递实参,返回受影响的记录数. int[]   batchUpdate(String...sql) int[]   batchUpdate(String...sql, List<Object[]>  args)

QueryRunner类常用的方法

public Object query(Connection conn, String sql, Object[] params, ResultSetHandler rsh) throws SQLException:执行一个查询操作,在这个查询中,对象数组中的每个元素值被用来作为查询语句的置换参数.该方法会自行处理 PreparedStatement 和 ResultSet 的创建和关闭. public Object query(String sql, Object[] params, Resu

js常用通用方法

验证身份证详细方法 function isCardNo(pId) { var arrVerifyCode = [1, 0, "x", 9, 8, 7, 6, 5, 4, 3, 2]; var Wi = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2]; var Checker = [1, 9, 8, 7, 6, 5, 4, 3, 2, 1, 1]; if (pId.length != 15 && pId.leng

Delphi中TStringList类常用属性方法详解

//TStringList 常用方法与属性: var List: TStringList; i: Integer; begin List := TStringList.Create; List.Add('Strings1');           {添加} List.Add('Strings2'); List.Exchange(0,1);             {置换} List.Insert(0,'Strings3');      {插入} i := List.IndexOf('String

python 中string类常用的方法

string                            aStr string.capwordsaStrspWord string.splitaStrspWord string.joinspWordrole string.maketrans, aStr aStr.translaterolevalue t string.Templatep t.substitutevaluep

FIle类常用工具方法整理(持续更新)

1.递归遍历一个目录,获取所有文件名(也可以取到绝对路径) public static void traverse(String filePath, List<String> files) { if (StringUtils.isBlank(filePath)){ return ; } try{ File superFile = new File(filePath); if (superFile.exists()) { File[] fileList = superFile.listFiles

C#数据库操作通用方法类

平时使用的数据库操作类整理更新后备份,记录下来以供以后使用,并顺便分享给大家一起交流.直接上源码: 整个底层操作方法分为4个类,基础方法类:SqlBase 基础工具类:SqlTool 日志类:DbLog  和MSSQL操作类:MsSqlHelper. 由于平时工作未用到其他类型数据库,因此未整理其他数据库的操作类,以后用到的话会进行更新. 首先是通用的数据库底层操作方法整理: /// <summary> /// 数据库操作基础方法类 /// </summary> public cl

Java的cmd配置(也即Java的JDK配置及相关常用命令)——找不到或无法加载主类 的解决方法

Java的cmd配置(也即Java的JDK配置及相关常用命令) ——找不到或无法加载主类  的解决方法 这段时间一直纠结于cmd下Java无法编译运行的问题.主要问题描述如下: javac 命令可以正常运行,而java命令有时可以正常运行,有时却不可以,不可以的症状就是显示“找不到或无法加载主类”. 在网上找了各种资料,最终发现是因为代码里含有package语句,所以无法在cmd下运行java命令解释.class文件.而那些可以运行的文件就是因为没有使用package语句. 我这种问题的解决方法