2016-11-15 4 views
-5

ユーザーがボタンをクリックするたびに新しいテキストファイルを作成したいので、ユーザーがボタンを5回クリックすると自動的に5つのテキストファイルを作成します。どうやってやるの?C#で新しいテキストファイルを作成したい

今私はこれを持っているが、これは動作しません:私はあなたがこれはテキストファイルの数を作成します

string txtFilePath = @"C:\Users\LH\Desktop\test"; 
int filecnt = 1; 
foreach (var item in listBox1.Items) 
{ 
    File.WriteAllText(txtFilePath + filecnt + ".txt", item.ToString()); 
    filecnt++; 
} 

を探していると信じて

StreamWriter myOutputStream = new StreamWriter(@"C: \Users\LH\Desktop\test.txt"); 

foreach (var item in listBox1.Items) 
{ 
    myOutputStream.WriteLine(item.ToString()); 
} 

myOutputStream.Close(); 
+3

OK、あなたのコードは5行をテキストファイルに書き込みます...これはワードファイルの作成とどのように関連していますか?あなたは単語ファイルを作るという点で何を試しましたか? – BugFinder

+0

@BugFinder Evertimeユーザーがボタンをクリックします。新しい単語ファイル/文書を作成したいです。 – daf32

+0

@MohitShrivastavaいいえ – daf32

答えて

0

は、内の項目の数に等しいですリストボックス

ファイルの命名はtext2.txtなど、test1.txtというようになります...

+0

はい、ありがとうございます。リストボックスの最初の値を取得します。 – daf32

+0

こんにちは@ daf32 [それを受け入れる](http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work)をクリックしてください。これは、あなたが解決策を見つけ出し、回答者とあなた自身の両方に評判を与えていることを広範なコミュニティに示します。これを行う義務はありません。 –

+0

それは私のリストボックスにある最初の値だけを持っているすべての値を表示していません..... – daf32

0

あなたはあなたのファイルの命名規則/ルールを持っている必要があります。例えば

:あなたが使用することができます日付と時刻を使用して:

string filePath = DateTime.Now.ToString(); 
string content = "somecontent"; 

if (!File.Exists(filepath)) 
    System.IO.File.WriteAllText(filepath, content); 

はあなたの特定のシナリオに応じて、あなたのループ内でそのコードを入れてください。

これは、filepathに日付時刻を使用する場合にのみ使用することを忘れないでください。カウンタ、接頭辞や接尾辞付きの名前リストを使用することができます

+0

内容はどういう意味ですか? – daf32

+0

コンテンツは、テキストファイルに書きたいもの、つまり文字列の値です。 – Elmar

+0

このような?文字列filePath = DateTime.Now.ToString(); string content = "test"; foreach(listBox1.Itemsのvarアイテム) { if(!File.Exists(filePath)) System.IO.File.WriteAllText(filePath、content); myOutputStream.WriteLine(item.ToString()); } myOutputStream.Close(); – daf32

関連する問題