c言語でファイルの読込み

 読み込ませたいファイルを実行ファイルにドラックして読込ませる方法を記載します。 実行ファイルに読込ませたいファイルをドラックするとargv[1]にファイルのパスが 書き込まれます。 fopen_sにargv[1]を引数とするとファイルを読込ませることができます。 下記のようにソースコードを書きます。

※fopen_sとfcloseはセットで使います。ファイルを使用しなくなったらfcloseを 忘れずに書いて下さい。
※下記ソースコードでは最後にscanf_sを置くことで実行ファイル終了時に コマンドラインを終了させないようにしています。何か適当な文字を入力して Enterを押すとコマンドラインは閉じます。

ファイルの読込み(ソースコード)


#include<stdio.h>
int main(int argc, char* argv[]) {
	int i;
	char gomi[100];
	FILE  *Input_File;

	/*---File準備---*/
	/*in*/
	if (fopen_s(&Input_File, argv[1], "r")) {
		printf("FILE OPEN FAILURE!!\n");
	}
	printf("-----%s-----\n", argv[1]);

	/*---File準備終わり---*/
	fclose(Input_File);

	/*--コマンドライン停止用、意味はない--*/
	scanf_s("%s", gomi, 100);
}

複数ファイルの読込み

 複数ファイルを選択して実行ファイルにドラックするとargv[1],argv[2]...argv[n]に ファイルのパスが格納されます。引数の数はargcに格納されるのでfor文でargcの数だけ 回せばすべてのファイルを順々に読み込ませることができます。下記に サンプルコードを書いておきます。

for文を用いた複数ファイル読み込み(ソースコード)


#include<stdio.h>
int main(int argc, char* argv[]) {
	int i;
	char gomi[100];
	FILE  *Input_File;

	/*---File準備---*/
	/*in*/
	for (i = 0; i < argc - 1; i++) {
		if (fopen_s(&Input_File, argv[i], "r")) {
			printf("FILE OPEN FAILURE!!\n");
		}
	printf("-----%s-----\n", argv[i]);

	/*---File準備終わり---*/
	fclose(Input_File);
	}
}