fopen_sでファイルが開けません。
visualstudioでつくったファイルは開けて想定どうりの動きをしますが、
メモ帳で作ったものは開けません。
Text.txtは 追加→新しい項目、でつくり、testmodel2はメモ帳で作りました。
testmodel2はvisualstudioのソースファイルにドラッグアンドドロップでおいてます。
Text.txtとtestmodel2.txtの中身はどちらも同じです。
回答お願いしたします。
v -1.000000 -1.000000 1.000000 v -1.000000 -1.000000 -1.000000 v 1.000000 -1.000000 -1.000000 v 1.000000 -1.000000 1.000000 v -1.000000 1.000000 0.999999
maincpp
1 2#include <stdio.h> 3#include <vector> 4#include<iostream> 5#include<Windows.h> 6using std::vector; 7 8struct Vector3f { 9 float x; 10 float y; 11 float z; 12}vec3d; 13 14struct Vector4l 15{ 16 int x; 17 int y; 18 int z; 19} vec4l; 20 21int main() 22{ 23 FILE *fp; 24 const char *file = "testmodel2.txt"; 25 char key[255] = { 0 }; 26 vector <Vector3f> Vertex; 27 vector <Vector4l> Face; 28 29 fopen_s(&fp, file, "r"); 30 if (fp == NULL) 31 { 32 printf("%sのオープンに失敗しました。\n", file); 33 printf("Enterキーで終了。\n"); 34 getchar(); 35 return 0; 36 } 37 38 39 fseek(fp, SEEK_SET, 0); 40 41 while (!feof(fp)) 42 { 43 ZeroMemory(key, sizeof(key)); 44 fscanf_s(fp, "%s", key, sizeof(key)); 45 46 if (strcmp(key, "v") == 0) 47 { 48 fscanf_s(fp, "%f%f%f", &vec3d.x, &vec3d.y, &vec3d.z); 49 Vertex.push_back(vec3d); 50 } 51 } 52 53 for (int i = 0; i < Vertex.size(); i++) 54 { 55 printf("%f,%f,%f\n", Vertex[i].x, Vertex[i].y, Vertex[i].z); 56 } 57 58 fclose(fp); 59 60 getchar(); 61}
回答1件
あなたの回答
tips
プレビュー