2014-03-13 47 views
0

我在這裏是新來的這個論壇。我有一個C#問題System.IO.File.ReadAllBytes()。我從像這樣的文本框C:\ Users \ Janek \ Pictures \ testpicture中讀取文件路徑。C#IO.File.ReadAllBytes路徑問題

spath = tb_path.text; 

System.IO.File.ReadAllBytes(spath); 

但這並不奏效。 VisualStudio說這是一個錯誤的路徑格式。我如何建立一條工作路徑?

spath = "@" + tb_path.text; 

System.IO.File.ReadAllBytes(path); 

沒有爲我工作。這當然很容易,但不管我嘗試什麼都行不通。但我認爲有人可以幫助我。感謝幫助!

+0

如果您在調試器中查看'spath'中的內容? –

+0

第二個aproach'spath =「@」+ tb_path.text;'肯定不能工作,因爲這會導致無效路徑 – AcidJunkie

+0

您正在處理的平臺是什麼?你可以使用FileDialog嗎? http://msdn.microsoft.com/en-us/library/system.windows.forms.filedialog(v=vs.110).aspx –

回答

1

不要給字符串加「@」,把它加到外面?

string path = tb_path.Text; 

var x = File.ReadAllBytes(@path); 

你想逃離這樣的:(@ 「C:\」)否( 「@ C:\」)

+0

感謝您的幫助,這就是它。 – JaneksCraft

1

你的代碼將出現確定。問題可能在於您輸入到文本框中的數據。 「C:\ Users \ Janek \ Pictures \ testpicture」可以是有效的文件名。但最有可能的不是,而且你錯過了一個文件擴展名。喜歡的東西

C:\用戶\ Janek \圖片\ testpicture.jpg

C:\用戶\ Janek \圖片\ testpicture.bmp

C: \用戶\珍妮克\圖片\ testpicture.png

或任何你的文件類型,更可能是正確的。