簡體   English   中英

無法識別的轉義序列

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM