這是一個足夠簡單的主題,但我無法在正在處理的應用程序中創建文件夾。我在診斷問題時遇到了問題。該應用運行良好的代碼,但沒有創建文件和文件夾。文件夾和設置文件的位置將位於AppData \ Roaming中。這裏是我使用的代碼,我相信這是正確的:這是最困擾我在C#項目的AppData中創建文件夾時遇到的問題
private void TestForm_Load(object sender, EventArgs e)
{
string path = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);
if (!Directory.Exists(path + "\\TestFolder"))
Directory.CreateDirectory(path + "\\TestFolder");
if (!File.Exists(path + "\\TestFolder\\settings.xml"))
File.Create(path + "\\TestFolder\\settings.xml");
}
的事情是,我嘗試了好幾種方法可以做到這一點,我在這裏有這麼幾種線程發現帖子。沒有人按預期打破應用程序,但沒有任何反應。就好像代碼被完全跳過或忽略一樣。如果有人想知道,我已經將System.IO引入命名空間。該應用程序是一個WinForms應用程序。
我是C#的完全noob,基本上是編程,但這似乎很簡單。非常感謝您的幫助...
編輯:這是代碼的第一部分。這直接在Form.cs(TestForm.cs)文件的前面。也許這將幫助:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;
namespace WindowsFormsApplication1
{
public partial class TestForm : Form
{
public TestForm()
{
InitializeComponent();
}
確保事件處理函數被調用。在第一行設置一個斷點並在調試模式下運行你的應用程序。也許事件處理程序沒有附加到TestForm? –
道歉,試圖在這裏添加一些代碼... –
請參閱http://stackoverflow.com/a/9847686/1260204。您可能沒有訂閱OnLoad事件。 – Igor