CÁC GIẢI PHÁP LẬP TRÌNH C# - Trang 41

41

Chương 1: Phát triển ứng dụng

public static int Main(string[] args) {}

Khi chạy, đối số

args

sẽ chứa một chuỗi cho mỗi giá trị được nhập trên dòng lệnh và nằm sau

tên ứng dụng. Phương thức

Main

trong ví dụ dưới đây sẽ duyệt qua mỗi đối số dòng lệnh được

truyền cho nó và hiển thị chúng ra cửa sổ Console:

public class CmdLineArgExample {

public static void Main(string[] args) {

// Duyệt qua các đối số dòng lệnh.

foreach (string s in args) {

System.Console.WriteLine(s);

}

}

}

Khi thực thi CmdLineArgExample với lệnh:

CmdLineArgExample "one \"two\" three" four 'five six'

ứng dụng sẽ tạo ra kết xuất như sau:

one "two" three

four

'five

six'

Chú ý rằng, khác với C C++, tên của ứng dụng không nằm trong mảng chứa các đối số.
Tất cả ký tự nằm trong dấu nháy kép (

) được xem như một đối số, nhưng dấu nháy đơn (

'

)

chỉ được xem như ký tự bình thường. Nếu muốn sử dụng dấu nháy kép trong đối số, đặt ký tự
vạch ngược (

\

) trước nó. Tất cả các khoảng trắng đều bị bỏ qua trừ khi chúng nằm trong dấu

nháy kép.
Nếu muốn truy xuất đối số dòng lệnh ở nơi khác (không phải trong phương thức

Main

), bạn

cần xử lý các đối số dòng lệnh trong phương thức

Main

và lưu trữ chúng để sử dụng sau này.

Ngoài ra, bạn có thể sử dụng lớp

System.Environment

, lớp này cung cấp hai thành viên tĩnh

trả về thông tin dòng lệnh:

CommandLine

GetCommandLineArgs

.

Thuộc tính

CommandLine

trả về một chuỗi chứa toàn bộ dòng lệnh. Tùy thuộc vào hệ

điều hành ứng dụng đang chạy mà thông tin đường dẫn có đứng trước tên ứng dụng hay
không. Các hệ điều hành Windows NT 4.0, Windows 2000, và Windows XP không chứa
thông tin đường dẫn, trong khi Windows 98Windows ME thì lại chứa.

Phương thức

GetCommandLineArgs

trả về một mảng chuỗi chứa các đối số dòng lệnh.

Mảng này có thể được xử lý giống như mảng được truyền cho phương thức

Main

, tuy

nhiên phần tử đầu tiên của mảng này là tên ứng dụng.

Liên Kết Chia Sẽ

** Đây là liên kết chia sẻ bới cộng đồng người dùng, chúng tôi không chịu trách nhiệm gì về nội dung của các thông tin này. Nếu có liên kết nào không phù hợp xin hãy báo cho admin.