👆ハードディスク内のファイルにデータを保存する場合、まずはデータはコンピュータのメモリに保存されてからハードディスク内のファイルに保存されます。

オープンモード "w" でファイルを開くと開いただけでファイルは初期化されて前に格納されたデータはきえてしまいます


🌻     🌻     🌻


ところで 新規書き込みできる状態でハードディスク内のファイルを開くオープンモード"w" で


ハードディスク内のファイルを開くと


ファイルは真っ新で何もない状態に設定し直され


以前保存されていたデータは消去されるのでした。


その状態から

新規にハードディスク内のファイルにデータを書き込んで保存を始めようというわけです。


では・・・


ここで質問のお時間で~す😊


今、数値データ

1

2

3

4

5


が格納されている


TEN-GOGO-C-language.txtファイルに


新たなデータをfprintf関数を使って書き込み保存するわけでもなく


ただ単に


TEN-GOGO-C-language.txtファイルを



  ≪オープンモード "w" で開いてfclose関数で閉じただけ≫



ならば


TEN-GOGO-C-language.txtファイルは初期化されて


数値データ

1

2

3

4

5


消えてしまうのかな?


どう思う😊?

🌼


ソーラー「それはつまり


単に


ハードディスク内のファイルを


        オープンモード"w"で


        オープンして閉じた


それだけのことでも


オープンモード"w"の仕組みにより


ファイルは何も保存されていない


まっさらな状態になるかどうかということだよね?



うう~んん


さすがに


ファイルをオープンモード"w"で開いて閉じただけで


以前保存されたデータは消去されてジ・エンド


は厳しいかなあ・・・


さすがに


そんなシステムは開発者もつくらないか・・・


はははっ


それだと何かの拍子で


まちがって


新規書き込みモード"w"でファイルを開いたら


以前保存されていたデータが消えてしまうことになるよ。


それはない な~い」



🌻

そうだと思う?😊


では 


新規書き込みできる状態でハードディスク内のファイルを開く


オープンモード"w"で


数値データ

1

2

3

4

5

が保存されている


TEN-GOGO-C-language.txtファイルを


次のプログラムのようにオープン💖。


&何もしないで


クローズ💖!してみると・・・」


#pragma warning(disable: 4996)

#include <stdio.h>

int main (void){

FILE *fp;

fp=fopen("TEN-GOGO-C-language.txt","w");

if(fp==NULL){

printf("ファイルオープンに失敗しましたよ~ん\n");

return -1;}

else printf("Hello!ファイルオープンに成功しましたよ~ん\n");

fclose(fp);

return 0;

}

コンパイル結果

Hello!ファイルオープンに成功しましたよ~ん


ソーラー「うんうん。」


🌻  🌻


さて 


TEN-GOGO-C-language.txtファイルをオープンモード"w"で


ただ

開いて

何もせず

ただ

閉じてみました



ソーラー「これだけでは


TEN-GOGO-C-language.txtファイル内の


数値データ

1

2

3

4

5

は消えてないとおもうけどなあ」


🌼🌼

そうこなくっちゃ・・・


この状態で


PC内検索をつかって


TEN-GOGO-C-language.txtファイルを探し出し


中身をしらべてみると・・・


さてさてどうなってるかな?

🌼🌼


ソーラー「


TEN-GOGO-C-language.txtファイルの中身は・・・

??

!!!

きれいさっぱり消えてる!!!」


🌻



ふふっ うっくくくっ😋



🌼


ソーラー「このときの


TEN-GOGO-C-language.txtファイルの


データ情報をみると


サイズ0バイト


ファイル更新時間は


ただいま、ファイルをオープンしクローズした時刻と一致している。


つまり ファイルをオープンモード"w"で開いただけでも


前に保存されたデータはきえてしまっている!


か、華麗なシステムだ・・・


やっ やっちまったよぅ」



🌻  🌻  🌻


どう、どう?このオープンモードwの仕組み?


斬新でしょ


🌼  🌼  🌼


ソーラー「・・・斬新なシステムだね」








  • Twitterで共有
  • Facebookで共有
  • はてなブックマークでブックマーク

作者を応援しよう!

ハートをクリックで、簡単に応援の気持ちを伝えられます。(ログインが必要です)

応援したユーザー

応援すると応援コメントも書けます