cプログラム : データの特定の行を削除

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
佐々木

cプログラム : データの特定の行を削除

#1

投稿記事 by 佐々木 » 14年前

はじめまして。c言語の超初心者です。
以下のようなtxtデータの第2,3行を
c言語を使って削除したいのですが方法がわかりません。
何卒ご教授願います。

=== txt データ例 ==============
%keisanrei
# x x*x
-2 4
-1 1
0 0
1 1
2 4
=======終了===================

( 第2.3行が2次元配列に読み込みさせる場合に
邪魔なので、プログラム上で削除したいと考えています。
もしくは、第2.3行のみ除いてデータの部分のみ2次元配列に
 読み込めればいいのでしょうが、これはもっと難しそう・・・)

ぬっち
記事: 105
登録日時: 14年前
連絡を取る:

Re: cプログラム : データの特定の行を削除

#2

投稿記事 by ぬっち » 14年前

fgetsを使って1行ずつ読んでいくことにして、第2、第3行の時だけは、読み込んだデータを捨てるという方法ではダメでしょうか?
そして読み込んだデータから、得たい値のみを抽出するという感じです。

流れとしては、
①バッファに読み込んだデータを格納
②そのデータが2,3行目だったらそのデータは棄却
③それ以降のデータなら、バッファからスペースや改行を条件としてバッファをそれぞれのデータに区切る
こんな感じで出来ると思います。

non
記事: 1097
登録日時: 14年前

Re: cプログラム : データの特定の行を削除

#3

投稿記事 by non » 14年前

>c言語を使って削除したいのですが

どういう意味なのかわかりません。ファイルに書き戻したいということなのでしょうか?
ぬっちさんが言われるように、読み込んでも、使わなければよいということだけだと思うのですが。
non

佐々木

Re: cプログラム : データの特定の行を削除

#4

投稿記事 by 佐々木 » 14年前

ぬっち様
返信ありがとうございます。
大変参考になりました。
しかしながら、まことに申し訳ありませんが、私は本当に超初心者故、
ぬっち様の流れを具体的にどうプログラム化すればよいのか?
見当がつきません。

=====================================================
fp= fopen("keisanrei.txt","r");
for(j=1;j<=5;j++){
for(i=1;i<=2;i++){
fscanf(fp, "%lf",&test[j]) != EOF;}
fclose(fp);
======================================================
私は上のようにプログラムを書いてみて、何も配列へ読み込めてないと
泣いておりました。
プログラム文のポイントのみでよいので
fgetsを使ってバッファにデータを格納するところから
何卒ご教授願います。


ぬっち さんが書きました:fgetsを使って1行ずつ読んでいくことにして、第2、第3行の時だけは、読み込んだデータを捨てるという方法ではダメでしょうか?
そして読み込んだデータから、得たい値のみを抽出するという感じです。

流れとしては、
①バッファに読み込んだデータを格納
②そのデータが2,3行目だったらそのデータは棄却
③それ以降のデータなら、バッファからスペースや改行を条件としてバッファをそれぞれのデータに区切る
こんな感じで出来ると思います。

アバター
沖 滉均
記事: 237
登録日時: 14年前
住所: K県F市

Re: cプログラム : データの特定の行を削除

#5

投稿記事 by 沖 滉均 » 14年前

読み込んだ行を削除の前に少し気になることが…
ファイル読み込みの前に配列の理解が少し怪しいように見えます。
[追記]※C言語の配列の添え字は0開始です
=====================================================
fp= fopen("keisanrei.txt","r");
for(j=1;j<=5;j++){
for(i=1;i<=2;i++){
fscanf(fp, "%lf",&test[j]) != EOF;}
fclose(fp);
======================================================
私は上のようにプログラムを書いてみて、何も配列へ読み込めてないと
泣いておりました。


上記部分だけではなく、一度作成したプログラムを全部貼ってみていただけませんか?
There is no royal road to learning.
codeタグで指定できる言語
画像

閉鎖

“C言語何でも質問掲示板” へ戻る