これは、わかりやすい話題ですが、作業中のアプリケーションではフォルダを作成できません。問題の診断に問題があります。アプリケーションはコードで正常に動作しますが、ファイルとフォルダは作成されません。フォルダと設定ファイルの場所は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");
}
最も私を悩ませている事は、私がここにSO上で複数のスレッドの投稿に見られる、これを行うには、いくつかの方法を試してみましたということです。誰も期待どおりにアプリケーションを壊すことはありませんが、何も起こりません。コードが完全にスキップされているか無視されているかのようです。誰かが不思議に思うなら、System.IOをネームスペースに導入しました。このアプリはWinFormsアプリです。
私はC#と基本的には一般的なプログラミングの完全なnoobですが、これはとても簡単なようです。どんな助けでも多くのありがとう...
EDIT:コードの最初の部分です。これは、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