2013-04-15 64 views
0

過去幾天我一直在構建一個遊戲。在我達到某些里程碑後,我會將項目文件夾放到我的保管箱文件夾中,然後在我的visual studio文件夾中創建一個新文件夾。項目在錯誤的目錄中查找文件(流)

但是現在我已經遇到了一個問題,當我試圖從文件中讀取streamreader試圖從以前的文件夾目錄中讀取。

因此,例如在'Project2'中,讀者試圖從'Project1'中的文件讀取。我該如何改變這一點?

+0

請顯示有問題的代碼 - 您可能使用相對路徑,但您當前的工作文件夾與您的預期不符。 –

回答

2

首先,您很可能會指定一個絕對目錄(「C:\ Blah \ BlahBlahblah ...」),或者您已將工作目錄設置爲錯誤的地方。

使用相對路徑或總是您的數據存儲在一個固定的地方(慣例是這些天來存儲你的數據是APPDATA。在一個地方存放它像Program Files文件是一個可怕的公約。不要做它當你釋放你的程序realsies)。通過XNA標記這個標記,你的根目錄也應該被指定到一個相對的位置(「Content」,「Data」等),以便當可執行文件啓動時,它會查看可執行文件的位置,文件夾「內容」或「數據」。這將使使用內容加載器變得更容易。

現在,一般的建議。你應該從來沒有必須創建一個新的項目完全做版本控制。你字面上做任何好的工作free Version Control Systemor like this one)。版本控制會使你對此不那麼痛苦。

最後,SO的最後一個提示:描述你的問題是很酷的,但比所有這些結合起來更好的是發佈引發錯誤的代碼。這樣做可以讓我們找出究竟發生了什麼問題,因爲SO(我試圖成爲其中一個)的技術專業人員已經處理並知道如何處理多種異常和編譯錯誤(或者我們的Google- Fu is stronk)。

+0

感謝您的回答,更重要的是建議! –

+0

@ Fendorio沒問題。 :D享受XNA等。不過,您可能想要記住,XNA是不推薦的技術(它仍然可以在Windows 7/8上運行,但它不再被MS主動支持)。如果框架中存在漏洞,他們會留在那裏。但是,大多數情況下,這是一個很好的框架,也是一種很好的學習方式,直到您準備好原始DirectX/SharpDX或OpenGL。如果你需要更相關,你可以嘗試使用'MonoGame'(谷歌它,它的內置像XNA一樣100%,並使用下面的SharpDX保持最新)。 – 2013-04-15 04:22:37

+0

酷感謝:)是的,我讀了它已經停產了,我是一個學習CS的遊戲dev的大學生,所以明年我會和Open GL等合作,XNA看起來不錯,純粹是爲了打破遊戲理念的快速原型雖然! –

相關問題