質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

Q&A

4回答

4656閲覧

フォルダの中にあるファイルを順次読み込みたい

rosbergf1

総合スコア13

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

0グッド

0クリップ

投稿2018/09/04 14:35

前提・実現したいこと

フォルダの中に用いたいデータが入っているファイルが100個近くあるのですが, この複数のファイルを順次読み込みたいです。
ファイル名を取得して、char型の変数に代入という流れをfor文等で繰り返せばよいのかな?とは思うのですが、自力でできそうにもありません。
力を貸していただければ幸いです。

現状のソースコード

c++

1FILE *fp, *fp1; 2char filename[] = "a.txt"; 3fp = fopen(filename, "r"); 4//処理をはさむ 5fclose(fp); 6 7char filename1[] = "b.txt"; 8fp1 = fopen(filename, "r"); 9//処理をはさむ 10fclose(fp1); 11//これ以降も同じように続く

将来的なソースコード

c++

1FILE *fp; 2//ここでファイル名の取得 3char filename[] = "取得したファイル名"; 4fp = fopen(filename, "r"); 5//処理をはさむ 6fclose(fp); 7//以降も同じように続く

試したこと

現状では、上記のように書かざるを得ない状況です。
ファイルポインタを無闇矢鱈に増やしたくないため、一回一回閉じてますが、ファイル名の取得上難しければ他のやり方でも問題ありません。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

cateye

2018/09/04 15:15

環境はUNIX,Windows,Mac?
ttyp03

2018/09/05 01:17

c++かcかはっきりして。コードはあきらかにcです。
rosbergf1

2018/09/05 01:20

環境はmacです。
rosbergf1

2018/09/05 01:24

c++でお願いします。cは結構使った経験があるのですが、c++は勉強中ということもあり、cっぽく書いてしまってるのだと思います
guest

回答4

0

投稿2018/09/05 19:55

episteme

総合スコア16614

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ここらへんですかね。
http://tech.ckme.co.jp/cpp/cpp_readdir.shtml

投稿2018/09/05 02:11

ttyp03

総合スコア16998

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

findfirst、findnext 関数を使う、というテもあります

#それに相当するWin32APIもありますね

投稿2018/09/04 22:47

y_waiwai

総合スコア87747

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

こちらを参考にされてはいかがでしょうか?
https://qiita.com/sh-o/items/50d7c3d53bd1cd9cadc0

投稿2018/09/04 15:14

fu7mu4

総合スコア1088

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

cateye

2018/09/04 19:55

bits/stdc++.hは、環境によっては使えませんので、注意d^^
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問