1.
1
using
System;
2 using System.Collections.Generic;
3 using System.Linq;
4 using System.Text;
5 using System.Threading;
6 using System.Diagnostics;
7 namespace WorkingConsole
8 {
9 class Program
10 {
11 static void Main( string [] args)
12 {
13 ProcessStartInfo psi = new ProcessStartInfo( " cmd " );
14 psi.RedirectStandardOutput = true ;
15 psi.RedirectStandardInput = true ;
16 psi.UseShellExecute = false ;
17 Process p = Process.Start(psi);
18
19 p.StandardInput.WriteLine( @" dir c:\ " );
20 p.StandardInput.WriteLine( @" ver " );
21 p.StandardInput.WriteLine( @" exit " );
22
23 string output = p.StandardOutput.ReadToEnd();
24 p.WaitForExit();
25
26 Console.WriteLine(output);
27 Console.Read();
28
29
30 }
31
32 }
33 }
34
2 using System.Collections.Generic;
3 using System.Linq;
4 using System.Text;
5 using System.Threading;
6 using System.Diagnostics;
7 namespace WorkingConsole
8 {
9 class Program
10 {
11 static void Main( string [] args)
12 {
13 ProcessStartInfo psi = new ProcessStartInfo( " cmd " );
14 psi.RedirectStandardOutput = true ;
15 psi.RedirectStandardInput = true ;
16 psi.UseShellExecute = false ;
17 Process p = Process.Start(psi);
18
19 p.StandardInput.WriteLine( @" dir c:\ " );
20 p.StandardInput.WriteLine( @" ver " );
21 p.StandardInput.WriteLine( @" exit " );
22
23 string output = p.StandardOutput.ReadToEnd();
24 p.WaitForExit();
25
26 Console.WriteLine(output);
27 Console.Read();
28
29
30 }
31
32 }
33 }
34
ref:http://blog.csdn.net/Javahaoshuang3394/archive/2009/01/02/3686305.aspx
1
using
System;
2 using System.Collections.Generic;
3 using System.Linq;
4 using System.Text;
5 using System.Threading;
6 using System.Diagnostics;
7 namespace WorkingConsole
8 {
9 class Program
10 {
11 static void Main( string [] args)
12 {
13 Process p = new Process();
14 p.StartInfo.WorkingDirectory = Environment.CurrentDirectory;
15 p.StartInfo.Arguments = " 2000 " ;
16 p.StartInfo.FileName = " CheckLeapYear.exe " ;
17 p.StartInfo.RedirectStandardOutput = true ;
18 p.StartInfo.RedirectStandardError = true ;
19 p.StartInfo.RedirectStandardInput = true ;
20
21 p.StartInfo.UseShellExecute = false ;
22
23 try
24 {
25 string output = string .Empty;
26 string error = string .Empty;
27
28 p.Start();
29
30 p.StandardInput.WriteLine( @" exit " );
31
32 output = p.StandardOutput.ReadToEnd();
33 error = p.StandardError.ReadToEnd();
34 p.WaitForExit();
35
36
37 if (output != string .Empty)
38 Console.WriteLine( " Output:{0} " , output);
39
40 if (error != string .Empty)
41 Console.WriteLine( " Error:{0} " , error);
42
43 Console.Read();
44 }
45 catch (Exception ex)
46 {
47 throw ex;
48 }
49 finally
50 {
51 p.Close();
52 }
53
54 }
55
56 }
57 }
58
2 using System.Collections.Generic;
3 using System.Linq;
4 using System.Text;
5 using System.Threading;
6 using System.Diagnostics;
7 namespace WorkingConsole
8 {
9 class Program
10 {
11 static void Main( string [] args)
12 {
13 Process p = new Process();
14 p.StartInfo.WorkingDirectory = Environment.CurrentDirectory;
15 p.StartInfo.Arguments = " 2000 " ;
16 p.StartInfo.FileName = " CheckLeapYear.exe " ;
17 p.StartInfo.RedirectStandardOutput = true ;
18 p.StartInfo.RedirectStandardError = true ;
19 p.StartInfo.RedirectStandardInput = true ;
20
21 p.StartInfo.UseShellExecute = false ;
22
23 try
24 {
25 string output = string .Empty;
26 string error = string .Empty;
27
28 p.Start();
29
30 p.StandardInput.WriteLine( @" exit " );
31
32 output = p.StandardOutput.ReadToEnd();
33 error = p.StandardError.ReadToEnd();
34 p.WaitForExit();
35
36
37 if (output != string .Empty)
38 Console.WriteLine( " Output:{0} " , output);
39
40 if (error != string .Empty)
41 Console.WriteLine( " Error:{0} " , error);
42
43 Console.Read();
44 }
45 catch (Exception ex)
46 {
47 throw ex;
48 }
49 finally
50 {
51 p.Close();
52 }
53
54 }
55
56 }
57 }
58
CheckLeapYear.exe code;
1
/*
2 * Created by BpLoveGcy.cnblogs.com
3 * Gump Yin
4 * Date: 2010-3-29
5 * Time: 22:12
6 *
7 * Version:
8 * CopyRight: http://BpLoveGcy.cnblogs.com/
9 */
10 using System;
11
12 namespace CheckLeapYear
13 {
14 class Program
15 {
16 public static int Main( string [] args)
17 {
18 if (args.Length != 1 )
19 {
20 Console.WriteLine( " Please input correct year number to check! " );
21 return 0 ;
22 }
23 int y;
24 if ( ! int .TryParse(args[ 0 ], out y))
25 {
26 Console.WriteLine( " Please input correct year number! " );
27 return 0 ;
28 }
29
30 if (Year.IsLeap(y))
31 {
32 Console.WriteLine( " The {0} is leap year! " , y);
33 }
34 else
35 {
36 Console.WriteLine( " The {0} is not leap year! " , y);
37 }
38 return 1 ;
39 }
40 }
41 }
2 * Created by BpLoveGcy.cnblogs.com
3 * Gump Yin
4 * Date: 2010-3-29
5 * Time: 22:12
6 *
7 * Version:
8 * CopyRight: http://BpLoveGcy.cnblogs.com/
9 */
10 using System;
11
12 namespace CheckLeapYear
13 {
14 class Program
15 {
16 public static int Main( string [] args)
17 {
18 if (args.Length != 1 )
19 {
20 Console.WriteLine( " Please input correct year number to check! " );
21 return 0 ;
22 }
23 int y;
24 if ( ! int .TryParse(args[ 0 ], out y))
25 {
26 Console.WriteLine( " Please input correct year number! " );
27 return 0 ;
28 }
29
30 if (Year.IsLeap(y))
31 {
32 Console.WriteLine( " The {0} is leap year! " , y);
33 }
34 else
35 {
36 Console.WriteLine( " The {0} is not leap year! " , y);
37 }
38 return 1 ;
39 }
40 }
41 }
Year.IsLeap() code;
1
/*
2 * Created by BpLoveGcy.cnblogs.com
3 * Gump Yin
4 * Date: 2010-3-29
5 * Time: 22:13
6 *
7 * Version:
8 * CopyRight: http://BpLoveGcy.cnblogs.com/
9 */
10 using System;
11
12 namespace CheckLeapYear
13 {
14 /// <summary>
15 /// Description of IsLeapYear.
16 /// </summary>
17 public class Year
18 {
19 public Year()
20 {
21 }
22 /// <summary>
23 /// 判定公历闰年遵循的一般规律为:四年一闰,百年不闰,四百年再闰。
24 /// 公历闰年的精确计算方法:(按一回归年365天5小时48分45.5秒)
25 /// 普通年能被4整除而不能被100整除的为闰年。 (如2004年就是闰年,1900年不是闰年)
26 /// 世纪年能被400整除而不能被3200整除的为闰年。 (如2000年是闰年,3200年不是闰年)
27 /// 对于数值很大的年份能整除3200,但同时又能整除172800则又是闰年。(如172800年是闰年,86400年不是闰年)
28 ///
29 /// 公元前闰年规则如下:
30 /// 非整百年:年数除4余数为1是闰年,即公元前1、5、9……年;
31 /// 整百年:年数除400余数为1是闰年,年数除3200余数为1,不是闰年,年数除172800余1又为闰年,即公元前401、801……年。
32 /// </summary>
33 /// <param name="yN"> 年份数字 </param>
34 /// <returns></returns>
35 public static bool IsLeap( int yN)
36 {
37
38 if ((yN % 400 == 0 && yN % 3200 != 0 )
39 || (yN % 4 == 0 && yN % 100 != 0 )
40 || (yN % 3200 == 0 && yN % 172800 == 0 ))
41 return true ;
42 else
43 return false ;
44
45 }
46 }
47 }
48
2 * Created by BpLoveGcy.cnblogs.com
3 * Gump Yin
4 * Date: 2010-3-29
5 * Time: 22:13
6 *
7 * Version:
8 * CopyRight: http://BpLoveGcy.cnblogs.com/
9 */
10 using System;
11
12 namespace CheckLeapYear
13 {
14 /// <summary>
15 /// Description of IsLeapYear.
16 /// </summary>
17 public class Year
18 {
19 public Year()
20 {
21 }
22 /// <summary>
23 /// 判定公历闰年遵循的一般规律为:四年一闰,百年不闰,四百年再闰。
24 /// 公历闰年的精确计算方法:(按一回归年365天5小时48分45.5秒)
25 /// 普通年能被4整除而不能被100整除的为闰年。 (如2004年就是闰年,1900年不是闰年)
26 /// 世纪年能被400整除而不能被3200整除的为闰年。 (如2000年是闰年,3200年不是闰年)
27 /// 对于数值很大的年份能整除3200,但同时又能整除172800则又是闰年。(如172800年是闰年,86400年不是闰年)
28 ///
29 /// 公元前闰年规则如下:
30 /// 非整百年:年数除4余数为1是闰年,即公元前1、5、9……年;
31 /// 整百年:年数除400余数为1是闰年,年数除3200余数为1,不是闰年,年数除172800余1又为闰年,即公元前401、801……年。
32 /// </summary>
33 /// <param name="yN"> 年份数字 </param>
34 /// <returns></returns>
35 public static bool IsLeap( int yN)
36 {
37
38 if ((yN % 400 == 0 && yN % 3200 != 0 )
39 || (yN % 4 == 0 && yN % 100 != 0 )
40 || (yN % 3200 == 0 && yN % 172800 == 0 ))
41 return true ;
42 else
43 return false ;
44
45 }
46 }
47 }
48