広告が含まれています。2021.03.08他のファイルに保存された文章を、プログラムで読み取り出来たらなあ。コマンドプロンプトを使わないで簡単にファイルの入出力をしたい。この記事を読めばこれらの悩みは解決できます。実際、コマンドプロンプトでもファイルの入出力はできます。過去に、コマンドプロンプトの使い方を紹介したので、そちらも参考にしてみてください。Studioを利用して簡単にコマンドプロンプトを使う方法を教えます。コマンドプロンプトを使うことが出来れば、他のファイルを読み取りしたり書き込みしたりできますよ。muusannitizyou.jpそして、今回はコマンドプロンプトを使わずに、ファイルの操作ができるプログラムを解説します。「ファイルに追記」をするときの「ファイルを開く方法」ファイルの読み書きをするfscanfを使って、ファイル内の読み込みfprintfを使って、ファイルへの書き込みファイルを閉じるファイル内の読み込みをするプログラムファイルの保存場所には要注意!まとめファイル操作のプログラムを解説します!ファイル操作は主に3つの目的に分けられます。ファイルの読み込みをするファイルに上書きするファイルに追記するこの3つの中のいずれかの目的を達成するために、以下の3つの手順が必要になります。ファイルを開くファイルの読み書きをするファイルを閉じる最初に「ファイルを開く」という操作を解説します。ファイルを開くファイル操作の目的によって、ファイルの開き方は異なります。「ファイルポインタ」、「fopen関数」というものを使います。「ファイル内の読み込み」という目的を達成するには、このようにプログラムを作ります。fpr;のように変数宣言します。データ型に「FILE」を使うというのは、丸覚えしてください。ファイルポインタは「*fpr」という名前にしましたが必ずこれじゃないとダメというわけではないです。「ファイル内の読み込み」には必ず「fopen関数」内で、「r」(readの略)を使うので、「*fpr」で統一した方が楽です。「fopen関数」内にはファイル名も入力します。注意したいのは、拡張子も含めるということです。拡張子というのは、メモ帳とかだと「.txt」になります。2行目のようにfpr=fopen(“~”,”〇”);とすることで、ファイルポインタ「*fpr」にファイルのアドレスを代入できます。この時点でファイルの読み込みはできるのですが、探しているファイルが存在しないときのために3行目以降があります。理解する必要はないので、3行目から後ろのif文の部分はこれをそのままコピペでOKです。一応説明すると、読み込んだファイルが存在しないときに、ファイルが存在しないことを知らせ、「exist(1);」というものを使ってプログラムを終了します。「exist」を使うときは「stdlib.h」をインクルードする必要があります。「ファイルに上書き」をするとき、指定したファイルが存在すれば上書きしてくれるのですが、存在しない場合コンピュータが自動的にそのファイルを作成するので、あらかじめ確認しておく必要があります。プログラム自体は、「ファイルの読み込み」のプログラムの「r」を「w」に、「fpr」を「fpw」に置き換えるだけでOKです。一応if文の中は、ファイルを新しく作ろうとしたときに、作れないことを知らせるように変更しましょう。file.");exit(1);//stdlib.hをインクルード}こんな感じで書けます。「ファイルに上書き」をするときと同じように、ファイルが存在する場合は追記をして、存在しない場合は新しくファイルを作成します。「ファイルの読み込み」のプログラムの「r」を「a」に、「fpr」を「fpa」に置き換えるだけでOKです。if文の中で、ファイルを新しく作ることができないことを知らせます。file.");exit(1);//stdlib.hをインクルード}こんな感じになります。基本的には以上の3通りによりファイルを開きます。この後、「ファイル内の読み込み」、「ファイルに上書き」、「ファイルに追記」の目的を達成するために、次のようにプログラムの続きを書きます。ファイルの読み書きをするfscanfを使って、ファイル内の読み込み「ファイル内の読み込み」をするときは、「fscanf関数」を使います。(これは、覚えてえなくてもいいのですが、「scanf関数」のもとは「fscanf関数」です。)fscanf(fpr,"%s",inf);コマンドプロンプトを説明したときと同じように文字を出力するならこのようにデータ型に「%s」を使います。このように、fscanf関数の中には、ファイルポインタ、データ型、変数名もしくは配列名を入れます。ここで使う変数名、配列名は、読み込んだ文字や数字を保存するためのものです。fprintfを使って、ファイルへの書き込み「ファイルへの書き込み(上書きや追記)」をするときは、「fscanf関数」を使います。(「fscanf関数」と同じように、「printf関数」のもとは「fprintf関数」です。)fprintf(fpw,"%s",inf);fprintf(fpa,"%s",inf);1行目が「ファイルに上書き」、2行目が「ファイルに追記」のときのプログラムです。ファイルを閉じるこのようにして目的を達成したら最後に必ず、開いたファイルを閉じましょう。ファイルを閉じるときに使う関数が「fclose関数」です。fclose(fpr);fclose(fpw);fclose(fpa);使ったファイルポインタを「fclose関数」の中に入れることで、そのファイルを閉じることができます。ここまでがファイルの操作になります。ファイル内の読み込みをするプログラムでは、実際に練習でプログラムを書いてみましょう。コマンドプロンプトの説明をしたときと全く同じ結果を出すプログラムを作ります。fclose(fpr);}このようにして、「info.txt」というファイルに保存した文字を読み取って出力結果の画面で表示されるプログラムをつくれます。ここでは、ファイルの読み取りをしているため、「*fpr」を使っています。このようにして、「info.txt」と全く同じ内容が出力されました。ファイルの保存場所には要注意!先ほどのプログラムをつくるときに注意したいのは、読み取りをするファイルの保存場所です。Studioなどでプログラムを作成する時に、必ずファイルの保存先(プロジェクトの保存先)を決めているはずです。そのファイル内に、読み取り用のファイルを保存しましょう。コマンドプロンプトの説明のときは、「Release」のファイル内に保存すると言いましたが、今回の場合、「Release」のファイル内では読み取りできません。まとめ今回のプログラムの説明を見て、コマンドプロンプトの方が簡単だなって思った人もいるかもしれませんが、その分、今回のプログラムは融通が利きます。ファイルに追記するか、上書きするか選べるのはもちろんですが、一回プログラムをつくれば後でとても楽です。コマンドプロンプトを使って、ファイル名を入力したりといった苦労をしないで済みますから。次は、ファイル入出力関数を勉強してみましょう。ファイル入出力関数を全て解説!(fopen)ファイル入出力関数を詳しく知りたいですか?ファイル入力関数もファイル出力関数も3種類ずつ解説します。本質から理解したい人はご覧ください。コメントをキャンセルメールアドレスが公開されることはありません。●1日で月10万円を稼ぐ方法などを教えています。あなたがネット上で月10万稼げていないのであれば、それは間違いなく知識不足です。僕の公式LINEに登録することで、その辺りの知識を体系的に取り入れることができます。すべて無料で教えています。BlogMuu検索モバイルバージョンに移動タイトルとURLをコピーしました/。