2012-02-22 27 views
5

Tôi đang theo dõi this tutorial từ MSDN.@ "../ .." có nghĩa là gì trong một đường dẫn?

Có điều gì đó tôi thấy trong các mã mà tôi không thể hiểu

private void PopulateTreeView() 
    { 
     TreeNode rootNode; 

     DirectoryInfo info = new DirectoryInfo(@"../.."); // <- What does @"../.." mean? 
     if (info.Exists) 
     { 
      rootNode = new TreeNode(info.Name); 
      rootNode.Tag = info; 
      GetDirectories(info.GetDirectories(), rootNode); 
      treeView1.Nodes.Add(rootNode); 
     } 
    } 
+0

http://msdn.microsoft.com/en-us/library/aa691090(v=vs.71).aspx – zerkms

+3

có thể trùng lặp của [Có gì @ ở trước một chuỗi trong C#?] (Http://stackoverflow.com/questions/556133/whats-the-in-front-of-a-string-in-c) –

Trả lời

7

@ là dành cho chuỗi đúng nguyên văn, để các chuỗi được xử lý như vậy. Đặc biệt hữu ích cho các đường dẫn có số \ có thể được coi là ký tự thoát (như \n)

../.. là đường dẫn tương đối, trong trường hợp này là hai cấp. .. đại diện cho phụ huynh của thư mục hiện tại và vv.

4

.. là thư mục chứa. Vì vậy, ../.. có nghĩa là "lên" hai lần.
Ví dụ, nếu thư mục hiện tại của bạn là C:/projects/a/b/c sau đó ../.. sẽ C:/projects/a

+0

Tại sao lại là downvote? có gì sai với câu trả lời của tôi? – shift66

+0

Không phải là downvoter nhưng '.' đại diện cho thư mục hiện tại và' ..' sẽ là một cấp, có thể ai đó đã buồn khi đọc dòng đầu tiên của bạn và do đó bình chọn bạn xuống – V4Vendetta

+0

Khá chắc chắn đó là vì OP * biết * gì ../ .. có nghĩa; anh ta không biết ý nghĩa của @. Đó là sự kết hợp đã ném anh ta ra, đặc biệt là vì @ là dư thừa ở đây anyway. –

Các vấn đề liên quan