標籤:style http java color 使用 檔案
在這裡,我先給自己留個印象
下面我們用C#實現一個調用Dos命令的小程式,讓大家對系統進程能有個直觀的瞭解.要使用Process類,首先要引入System.Diagnostic命名空間,然後定義一個新的Process類,將其制定為開啟一個Cmd.exe的命令,然後根據其的StanderInput和StanderOutput對其進行命令的輸入和資訊的讀出.具體程式如下:
Process p=new Process();
p.StartInfo.FileName="cmd.exe"; //設定啟動的進程命令
/**設定是否標準輸入輸出和標準錯誤,當這些都設為true時
**UseShellExcute必須為 false*/
p.StartInfo.UseShellExcute=false;
p.StartInfo.RedirectStanderInput=true;
p.StartInfo.RedirectStanderOutput=true;
p.StartInfo.RedirectStanderError=true;
p.StartInfo.CreatNoWindows=true;
p.start();
//向Dos視窗中輸入ping的命令,這裡的IP值請自己設定
p.StandardInput.WriteLine("ping -n 1 "+IP);
//輸入退出視窗的命令
p..StandardInput.WriteLine("Exit");
/**這裡用ReadToEnd讀出輸出並將其賦給一個string值,這裡要
**注意的是ReadToEnd這個命令是在調用的程式結束後才可以執行的,所以
**要是把這句放在上面的"Exit"之後,程式就會進入一個死迴圈*/
string output= p.StandardOutput.ReadToEnd();
主要的工作已經完成了,下來就看你怎樣利用程式的輸入輸出來完成一些功能了.
在這裡我也寫了一個實現:
Program代碼
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Diagnostics;
-
- namespace ConsoleApplication1
- {
- class Program
- {
- static void Main(string[] args)
- {
- Process process = new Process();
- string strBatPath = "E:/test.bat";
- string mess = ExecuteBAT(strBatPath, process);
- Console.WriteLine(mess);
- Console.ReadKey();
-
- }
- private static string ExecuteBAT(string strBatPath, Process pro)
- //檔案路徑;要執行bat檔案的進程,返回執行結果
- {
- string mess = "";
-
- try
- {
- pro.StartInfo.UseShellExecute = true;
- //strBatPath是bat檔案路徑
- pro.StartInfo.FileName = strBatPath;
- pro.StartInfo.CreateNoWindow = true;
- if (pro.Start())
- {
- //寫記錄檔
- mess = DateTime.Now.ToLongDateString() + " " + strBatPath + "執行成功";
- }
- else
- {
- mess = string.Format("執行{0}失敗.", strBatPath);
- }
- }
- catch (Exception ex)
- {
- mess = ex.Message;
- }
- finally
- {
- pro.Close();
- }
- return mess;
- }
-
-
- }
- }
現在 在寫一個讀入檔案的C#方法
C#代碼
- public static void printFile(string strFileName)
- {
- StreamReader srd;
- try
- {
- srd = File.OpenText(strFileName);
-
- }
- catch (Exception e)
- {
- Console.WriteLine(e.Message);
- Console.WriteLine("File not read");
- return;
- }
- while(srd.Peek()!=-1)
- {
- string str = srd.ReadLine();
- Console.WriteLine(str);
- }
- Console.WriteLine("End of read");
- srd.Close();
- }
- public static void InputFile(string strFileName)
- {
- StreamWriter swt;
- try
- {
- swt = File.CreateText(strFileName);
-
- }
- catch (Exception e)
- {
- Console.WriteLine(e.Message);
- Console.WriteLine("File not Write");
- return;
- }
- swt.WriteLine("chenhailong");
- swt.Close();
-
- }