teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

追記

2020/04/11 12:45

投稿

hikarhikar
hikarhikar

スコア18

title CHANGED
File without changes
body CHANGED
@@ -3,7 +3,10 @@
3
3
  [Xファイル](https://drive.google.com/open?id=1OmRvhbTQCWLO9iOgdvVbIAdWivfXvEgH)
4
4
  ↑Xファイル
5
5
 
6
+ erro:22はネットで調べた結果、[無効な式数]ということでした。
7
+ ![結果](fa106b89875a8005826837a21aaf6aa3.png)
8
+ ![プロジェクトファイル](16ff6b1f550978f33890457a1c9e96c9.png)
6
- 直接配列内にファイル名を格納した場合は正常にファイルを開くことができました。
9
+ 直接配列内に描画結果で出たファイル名を格納した場合は正常にファイルを開くことができました。
7
10
  ```C++
8
11
  char filename[18][BUF_MAX] = {
9
12
  "Amiku1.bmp",
@@ -23,8 +26,6 @@
23
26
  "2ddream.bmp"
24
27
  };
25
28
  ```
26
- ![結果](7818f245f690415fcb42e8cfa662cd83.png)
27
- ![プロジェクトファイル](16ff6b1f550978f33890457a1c9e96c9.png)
28
29
  ```C++
29
30
  #include <stdio.h>
30
31
  #include <stdlib.h>
@@ -34,8 +35,10 @@
34
35
 
35
36
  #include "drawObj.h"
36
37
 
38
+ int txtcount = 0;
37
39
  char FileCommand[FILE_MAX][BUF_MAX] = { 0 };
38
40
  char FileName[FILE_MAX][BUF_MAX] = { 0 };
41
+ char ReadFile[FILE_MAX][BUF_MAX] = { 0 };
39
42
 
40
43
  void drawBegin(glm::ivec2 _windowSize) {
41
44
  glPushMatrix();
@@ -100,24 +103,60 @@
100
103
  }
101
104
  fileNameCount = false;
102
105
  }
106
+ }
107
+ /*for (int i = 0; i < fCndCont; i++) {
108
+ printf("%s:%s\n", FileCommand[i], FileName[i]);
109
+ }*/
103
110
 
104
- }
111
+ int first = 0;
112
+ int count = 0;
113
+ bool filecont = true;
114
+
105
115
  for (int i = 0; i < fCndCont; i++) {
116
+ for (int k = 0; k < fCndCont; k++) {
117
+ first = 0;
118
+ for (; FileName[k][first] != NULL; first++) {
119
+ if (FileName[i][first] == ReadFile[k][first])
120
+ count++;
121
+ }
122
+ if (first == 0) {
123
+ continue;
124
+ }
125
+ if (count == first) {
126
+ filecont = false;
127
+ }
128
+ count = 0;
129
+ }
130
+ if (filecont == true) {
131
+ for (int m = 0; FileName[i][m]!=NULL; m++) {
106
- printf("%s:%s\n", FileCommand[i], FileName[i]);
132
+ ReadFile[txtcount][m] = FileName[i][m];
133
+ }
134
+ txtcount++;
135
+ }
136
+ filecont = true;
107
137
  }
138
+ //printf("txtcount:%d\n", txtcount);
139
+ /*for (int i = 0; i < txtcount; i++) {
140
+ printf("ReadFile %d:%s\n",i, ReadFile[i]);
141
+ }*/
108
142
 
109
143
  fclose(fobj);
110
144
  }
111
145
 
112
146
  void loadTxt() {
147
+ for (int i = 0; i < txtcount; i++) {
148
+ printf("ReadFile %d:%s\n", i, ReadFile[i]);
113
- FILE* ftxt;
149
+ FILE* ftxt;
150
+ errno_t erro;
114
- fopen_s(&ftxt, FileName[0], "rb");
151
+ erro = fopen_s(&ftxt, ReadFile[0], "rb");
115
- if (ftxt == nullptr) {
152
+ if (ftxt == nullptr) {
116
- printf("file erro\n");
153
+ printf("file erro\n");
154
+ printf("erro:%d\n", erro);
117
- return;
155
+ continue;
156
+ }
157
+ printf("openned file\n");
158
+
159
+ fclose(ftxt);
118
160
  }
119
- printf("openned file\n");
120
-
121
- fclose(ftxt);
122
161
  }
123
162
  ```