アプリ版:「スタンプのみでお礼する」機能のリリースについて

プログラミング(C言語)で、ファイルの内容をCSV形式に変換し、指定した出力ファイルに出力するプログラムを作成せよ。という課題がありましたが、
ファイルの内容をCSV形式に変換
がわかりません。どのようなプログラムをかいたらよいのでしょうか?

A 回答 (6件)

#5です。


よく見たらフィールド内での入れ替えが居るようなので、
#5で書いたやり方ではできませんね。。。
#参考だしいいのかな。。。

読み込みを一行ずつにして、
中を入れ替えて・・・
という作業が必要になります。
    • good
    • 0
この回答へのお礼

アドバイスのおかげでうまくできました。ありがとうございます。

お礼日時:2007/07/16 20:48

Comma Separated Values File(CSVファイル)には決まった


ファイルヘッダのようなものはありません。
中身はただのテキストファイルです。

今回の入力ファイルのデータなら手順としては、
1入力ファイルを開く
2出力ファイルを開く
3入力ファイルから1字を読み込む
4読み込んだ文字が半角スペースならば出力ファイルにカンマを書く
5それ以外なら読み込んだものをそのまま出力ファイルに書く
6後は3-5を入力ファイルが終了するまで繰り返す
7出力ファイルを閉じる
8入力ファイルを閉じる

といった感じでしょうか。
    • good
    • 0

初心者にやさしく。


CSVファイルは、
・データを,(カンマ)で区切って並べたファイル
・テキストファイル
・拡張子は".csv"
です。
テキストファイルなので、普通にfopen()でオープンして、fprintf()で書き込めます。

上に書いたように、通常のテキストファイルと違うのは、カンマでデータが区切られていることと
ファイル名がXXXXXX.csvとなっていることだけです。
    • good
    • 1

★データ内容は?


>ファイルの内容をCSV形式に変換がわかりません。
 ↑
 変換出力しようとしている元のデータ(テキスト)内容はどんな感じですか。
 例えば
 ------
 りんご
 みかん
 いちご
 ------
 の3行を CSV 形式の1行に変換して出力する場合は
 fputs( "りんご,", fp );
 fputs( "みかん,", fp );
 fputs( "いちご\n", fp );
 で可能です。こうすると
 --------------------
 りんご,みかん,いちご
 --------------------
 ↑
 立派な CSV 形式のファイルとなります。
・ようするに文字列(データ)をカンマ文字で区切って出力すればよいわけです。
 『変換』という言葉が出ているが難しくないです。
 また、1行に何列出力するのかは課題で決まっているはずなので確認して下さい。
 例えば CSV 形式1行にデータを3列で出力するようになっていれば3列出力後に
 改行(\n)コードを入れます。
・以上。参考に。
    • good
    • 0
この回答へのお礼

変換という言葉が、問題を難しくさせていたのですね。

お礼日時:2007/07/13 20:46

コンマ区切りの文字をテキスト形式で保存したもので、


ファイルの拡張子は .CSV になります。

図を見たほうが早いと思うので
http://homepage3.nifty.com/dkcsv/
のサイトの
http://homepage3.nifty.com/dkcsv/soft/csv/
を見てみてください。
    • good
    • 0
この回答へのお礼

サイトをありがとうおざうました。漠然としていたので助かりました。

お礼日時:2007/07/13 20:44

- CSVのなんたるやをご存じですか?


- ファイルの内容とは? どんな形式/書式ですか?
- そのファイルの内容を読み、単にprintfできますか?

この回答への補足

ファイルの内容は、
JZK-30 Jizake_tsumeawase 4500
BSP-15 Body_soap_set 3000
     ・
     ・
     ・
です。
これを
JZK-30, 4500,Jizake_tsumeawase
BSP-15, 3000,Body_soap_set
に変換するのですが・・・

補足日時:2007/07/12 23:00
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!