[英]Unrecognized escape sequence
VS 2005 WinXP
我正在編寫一個將連接到 samba 共享的應用程序。
但是,在我的路徑中,我收到一個編譯錯誤:
unrecognized escape sequence
我使用的路徑是這樣的:
string path = "\\Samba\sun005\admin_config\test.txt";
我還嘗試了以下使用雙反沖:
string path = "\\Samba\\sun005\\admin_config\\test.txt";
但是,上面的編譯沒問題,但是當它運行時它會抱怨“找不到路徑”
還嘗試了以下方法:
string path = @"\\Samba\sun005\admin_config\test.txt";
當我檢查調試器時,我得到以下字符串
\\Samba\\sun005\\admin_config\\test.txt
我的異常被拒絕訪問。 現在我正在考慮它。 我沒有設置用戶名和密碼。 我認為這是我的問題。
UNC 路徑應該只包含機器名稱、共享名稱、相對於共享點的路徑(不需要包含“samba”方案)。 在機器名稱為 sun005 的情況下,以下兩種方法中的任何一種都可以工作:
"\\\\sun005\\admin_config\\test.txt"
@"\\sun005\admin_config\test.txt"
編譯器將\\\\Samba\\sun005\\admin_config\\test.txt
視為\\Samba\\sun005\\x07dmin_config\\x09est.txt
。 但它只是不理解“\\s”。
它將\\\\Samba\\\\sun005\\\\admin_config\\\\test.txt
視為編譯器滿意的\\Samba\\sun005\\admin_config\\test.txt
,但您確實需要在開始時使用兩個斜杠。 為此,您需要使用四個斜杠“\\\\Samba....”
@"\\\\Samba\\sun005\\admin_config\\test.txt"
正是您想要的! 您會在調試器中看到額外的斜杠,因為調試器添加了它們,因此您可以看到字符串中的真正內容。 如果字符串中有換行符,它將顯示為“\\n”。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.