我从机器人那里得到了一个测试文件,我必须通过我正在开发的C ++程序编程。所以我想用这个文件来看看机器人如何保存点的坐标。我的程序目前能够计算坐标,现在我必须生成机器人代码。
因此我想查看该文件。但似乎该文件是以二进制模式写入的。所以我的第一个想法是:以二进制模式打开文件并将内容打印到屏幕上。所以这是我使用的代码:
//#include "stdafx.h"
#include <iostream> // std::cout
#include <fstream> // std::ifstream
#include <Windows.h>
int main () {
std::ifstream is ("Test.PRG", std::ifstream::binary);
if (is) {
// get length of file:
is.seekg (0, is.end);
int length = is.tellg();
is.seekg (0, is.beg);
char * buffer = new char [length];
std::cout << "Reading " << length << " characters... ";
// read data as a block:
is.read (buffer,length);
if (is)
std::cout << "all characters read successfully.";
else
std::cout << "error: only " << is.gcount() << " could be read";
is.close();
// ...buffer contains the entire file...
for(int i=0; i<length; i++)
{
std::cout << (double) buffer[i] << std::endl;
}
delete[] buffer;
}
Sleep(10000);
return 0;
}
但是使用这段代码,我只能看不到文件中的内容。我也尝试过不同的对话(双倍)。我用char,int和float。现在我只是不知道,我还能做些什么。是否有可能的方法来读取此文件并将其转换为ASCII?我还在这里添加了该文件的链接,因此您可以查看它。 Download link for file