|

楼主 |
发表于 2023-4-13 19:35:07
|
显示全部楼层
- #include <graphics.h>
- #include <fstream>
- #include <sstream>
- #include <string>
- #include <iostream>
- #include <conio.h>
- int main()
- {
- // 初始化图形模式
- initgraph(1040, 480, SHOWCONSOLE);
- //float a=496.000000, b=172.000000, L1=40.000000, L2=15.000000, L3=32.000000, B1=40.000000, H1=32.000000, hh=2.600000,GA=1;
- // 打开文件
- std::ifstream file("D:\\cwenjian\\donglixiang2.txt");
- if (!file.is_open()) {
- std::cerr << "无法打开文件!" << std::endl;
- return 1;
- }
-
- float TD, a, b, L1, L2, L3, B1, H1, hh, GA;
- file.read((char*)&TD, sizeof(float));
- file.read((char*)&a, sizeof(float));
- file.read((char*)&b, sizeof(float));
- file.read((char*)&L1, sizeof(float));
- file.read((char*)&L2, sizeof(float));
- file.read((char*)&L3, sizeof(float));
- file.read((char*)&B1, sizeof(float));
- file.read((char*)&H1, sizeof(float));
- file.read((char*)&hh, sizeof(float));
-
- if (file.fail()) {
- std::cerr << "读取数据失败!" << std::endl;
- return 1;
- }
- // 打印读取的数据
- std::cout << "TD: " << TD << std::endl;
- std::cout << "a: " << a << std::endl;
- std::cout << "b: " << b << std::endl;
- // ...
- // 画矩形
- //初始化图像网格
- ::line(a,b,a,b+L1);
- ::line(a,b+L1,a+H1,b+L1);
- ::line(a+H1,b+L1,a+H1,b+L1-L2);
- rectangle(a+H1,b+L1-L2+2,a+H1+hh,b+L1-2);
- ::line(a+H1+hh/2,b+L1-L2+2,a+H1+hh/2,b+L1-2);
- ::line(a+H1,b+L1-L2,a+H1,b+L1-L2-L3/5);
- ::line(a+H1,b+L1-L2-L3/5,a+H1/3,b);
- ::line(a,b,a+H1/3,b);
- ::line(a+H1/4,b,a+H1/4,b-L1/6);
- ::line(a+H1/4,b-L1/6,a+H1-H1/10,b-L1/6);
- ::line(a+H1-H1/10,b-L1/6,a+H1-H1/10,b-L1/6+4*L3/5-5);
-
- // 关闭文件
- file.close();
-
-
- // 等待用户按键
- _getch();
-
- // 关闭图形模式
- closegraph();
- return 0;
- }
复制代码
读取用的您之前发的这个方法,可以打开文件读取数据,但是读出来的数据就是异常值 |
|