2012-04-27 138 views
0

我正在VS2010中創建一個控制檯程序。在解決方案資源管理器中放置的結構是Project文件,Properties文件夾,References和Program.cs。在Visual Studio項目中使用文本文件

我想利用文本文件進行讀取/寫入。將此文件添加到項目的正確方法是什麼?如果我只是做StreamWriter sw = new StreamWriter("maze.txt")那麼它會在輸出文件夾(bin/debug或bin/release)中創建文件。但它不會出現在解決方案資源管理器中。

現在,如果我在解決方案資源管理器右鍵單擊並添加新項目,我可以創建在根項目文件夾中的文本文件(同一水平的Program.cs)。這將在解決方案資源管理器中顯示。

有沒有辦法讓我訪問這個新創建的文件?除了像StreamWriter sw = new StreamWriter("../../maze.txt")那樣通過指定兩個父母的路徑?

我應該如何在Visual Studio控制檯applicatoin管理外部文件?在WinForms應用程序中,有一個資源文件夾,我可以在其中添加這些內容並使用Resources.resx文件進行管理。我可以通過Properties.Resources.someres訪問它。

回答

4

如果你想在設計時創建一個文件,並把它列入你的bin文件夾然後添加文本文件,去屬性,然後選擇「複製總是」或「複製,如果新」的副本屬性。

注意,這將文件從項目的bin文件夾中複製,但調試不會被複製成項目本身的變化時,在bin文件夾。我懷疑你想讓程序與項目本身的文件版本進行交互。如果你做了這樣的事情,那麼無論何時你在VS之外運行程序(即,當你將它複製到實際用戶的機器上),它都不起作用。

+0

嗯,我知道我能做到的文件複製到bin文件夾,但我只是想知道如果我應該訪問的文本文件,比如'的StreamWriter(「../../ maze.txt」)'或如果像'StreamWriter(Properties.Resources.maze)'這樣的文件真的成爲項目的一部分,那就更簡單了。 – Jonas 2012-04-27 14:14:13

+0

不,你不應該在程序運行時訪問實際上是項目一部分的文件。程序本身應該只是修改bin/debug文件夾中的文件的副本。 – Servy 2012-04-27 14:38:18

1

你仍然可以嵌入資源控制檯應用程序。我在快速應用程序中使用了這種技術,因此我們不需要安裝程序或部署這些類型的文件等依賴項。這question討論了一個類似的話題。

相關問題