C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[1]: テキストボックスの中身をCSVに追加していく。


(過去ログ 116 を表示中)

[トピック内 4 記事 (1 - 4 表示)]  << 0 >>

■68541 / inTopicNo.1)  テキストボックスの中身をCSVに追加していく。
  
□投稿者/ サトウ (6回)-(2013/10/26(Sat) 15:26:20)

分類:[C#] 

C#を利用して、テキストボックスの中身を
あるボタンを押した時に、
CSVに追加していきたのですが良くわかりません。

尚、CSVは
次のフォルダで
System.Windows.Forms.Application.StartupPath

ファイル名を
alldata.csv というファイル名で作成します。

また、csvのヘッダー項目を番号 項目 値とします。。

例;次の3つのテキストボックスと一つのボタンがあったとします。
テキストボックス txt1 txt2 txt3
ボタン btn1

この時に、
btn1を押す度に、txt1 txt2 txt3の値がどんどん追加されていくような感じです。

例として、
txt1.Text="14" txt2.Text="野菜" txt3.Text="キャベツ"として
btn1を押した時にCSVの中身は

番号,項目,値
14,野菜,キャベツ

次に、手動でテキストの中身をクリアして
txt1.Text="15" txt2.Text="肉" txt3.Text="豚肉"として、
btn1を押した時にCSVの中身は

番号,項目,値
14,野菜,キャベツ
15,肉,豚肉

と言うように、ヘッダー項目の下に次々と追加されていく感じです。

どうぞ分かる方お願いします。




引用返信 編集キー/
■68542 / inTopicNo.2)  Re[1]: テキストボックスの中身をCSVに追加していく。
□投稿者/ WebSurfer (80回)-(2013/10/26(Sat) 15:50:03)
No68541 (サトウ さん) に返信
> C#を利用して、テキストボックスの中身を
> あるボタンを押した時に、
> CSVに追加していきたのですが良くわかりません。
>
> 尚、CSVは
> 次のフォルダで
> System.Windows.Forms.Application.StartupPath
>
> ファイル名を
> alldata.csv というファイル名で作成します。
>
> また、csvのヘッダー項目を番号 項目 値とします。。
>
> 例;次の3つのテキストボックスと一つのボタンがあったとします。
> テキストボックス txt1 txt2 txt3
> ボタン btn1
>
> この時に、
> btn1を押す度に、txt1 txt2 txt3の値がどんどん追加されていくような感じです。
>
> 例として、
> txt1.Text="14" txt2.Text="野菜" txt3.Text="キャベツ"として
> btn1を押した時にCSVの中身は
>
> 番号,項目,値
> 14,野菜,キャベツ
>
> 次に、手動でテキストの中身をクリアして
> txt1.Text="15" txt2.Text="肉" txt3.Text="豚肉"として、
> btn1を押した時にCSVの中身は
>
> 番号,項目,値
> 14,野菜,キャベツ
> 15,肉,豚肉
>
> と言うように、ヘッダー項目の下に次々と追加されていく感じです。
>
> どうぞ分かる方お願いします。
>

何も分からないから完全なコードを書いてアップしてくれと言っているわけではないで
すよね?

でなければ、どこまで自分で実装できて、どこから分からないのか、何がうまくいかな
いのかなどを、具体的に書けませんか?
引用返信 編集キー/
■68565 / inTopicNo.3)  Re[1]: テキストボックスの中身をCSVに追加していく。
□投稿者/ ムドー (4回)-(2013/10/28(Mon) 14:30:14)
No68541 (サトウ さん) に返信
> 例;次の3つのテキストボックスと一つのボタンがあったとします。
> テキストボックス txt1 txt2 txt3
> ボタン btn1
>
> この時に、
> btn1を押す度に、txt1 txt2 txt3の値がどんどん追加されていくような感じです。
>
> 例として、
> txt1.Text="14" txt2.Text="野菜" txt3.Text="キャベツ"として
> btn1を押した時にCSVの中身は
>
> 番号,項目,値
> 14,野菜,キャベツ
>
> 次に、手動でテキストの中身をクリアして
> txt1.Text="15" txt2.Text="肉" txt3.Text="豚肉"として、
> btn1を押した時にCSVの中身は
>
> 番号,項目,値
> 14,野菜,キャベツ
> 15,肉,豚肉
>
> と言うように、ヘッダー項目の下に次々と追加されていく感じです。

サトウさんの記述された方法ですと、ボタンを押すたびに
・ファイルの読み込み→ヘッダーを書き込む判定→(ヘッダー行追加)→データの書き込み
が繰り返される気がするんですがそうだとするとスマートな方法とは思えません。

ボタンを押したらDataGridViewやListViewなりに追加していき、最後に一気に書き込みを行ったほうが
スマートになるのではないかと思います。

また、Google検索などで「C# csv 書き込み」と検索すれば記述方法について色々出てくると思いますが、
サトウさんはどの部分で躓いておられるのでしょうか?

取り急ぎ検索のトップに出たもののURLを張っておきます。

・DataTableや配列等をCSV形式のファイルとして保存する - DOBON.NET
http://dobon.net/vb/dotnet/file/writecsvfile.html
引用返信 編集キー/
■68572 / inTopicNo.4)  Re[1]: テキストボックスの中身をCSVに追加していく。
□投稿者/ Jitta (85回)-(2013/10/28(Mon) 22:40:06)
Jitta さんの Web サイト
No68541 (サトウ さん) に返信

 プログラムって、なんだと思いますか?
結局のところ、PC にやって欲しいことを、PC にわかる言語で書くこと、なんです。
メールを出すとき、どうしますか?
何を書くか考えて、書いて、読み直して意味が通るか、不足がないか、考えてから、出しますよね。
プログラムを書くのも同じです。

 まず、あなたは、PC に、何をして欲しいのでしょうか。
テキストボックスを3つ、表示して欲しい。
ボタンを1つ、表示して欲しい。
ボタンをクリックすると、ファイルに、テキストボックスの内容を、CSV 形式で追加して欲しい。

ですよね。
それが実現するために、何をしなければならないでしょうか。
この、「何をしなければならないか」を考えることこそ、プログラミングで一番難しく、一番楽しいところです。

テキストボックス1〜3の内容を、CSV 形式に連結する。
出力予定のファイルの有無を調べる。
有る場合、開く。
無い場合、作成して、ヘッダを書き出す。
連結した文字列を書き出す。
ファイルを閉じる。
テキストボックス1〜3を空欄にする。

というところでしょうか。
で、これを、コンピュータの言語に“翻訳”します。

引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -