есть файл fbx binarу. пытался считать с помощью ifstream но он считывает до определенного символа и дальше не читает файл(примерно 10 - 12 символ)
string line;
ifstream myfile("C:/Users/wARTEMw/Desktop/object/Blender_Binary.fbx");
if (myfile.is_open())
{
while (myfile.good())
{
getline(myfile, line);
cout << line;
}
myfile.close();
}
Нужно при открытии указать что файл должен читаться в бинарном режиме. Для этого используйте второй параметр конструктора:
ifstream myfile(
"C:/Users/wARTEMw/Desktop/object/Blender_Binary.fbx",
ifstream::in | ifstream::binary
);
std::ifstream fs("C:/Users/wARTEMw/Desktop/object/Blender_Binary.fbx", std::ios::in | std::ios::binary );
// Узнаём размер файла
fs.seekg( 0, std::ios::end );
std::size_t size = fs.tellg();
fs.seekg( 0, std::ios::beg );
// Читаем файл целиком
std::unique_ptr <char[]> buf;
buf.reset( new char[size] );
fs.read( buf.get(), size );
/*
либо без std::unique_ptr
char* buf = new char[size];
fs.read( buf, size );
и нужно не забыть освободить память delete []buf;
*/
когда нужно вывести все символы нужно учитывать что на вывод будут идти управляющие символы, то есть если попадётся '\0' то вывод прекратится
по этому если нужно вывести на экран или в файл содержимое, необходимо как то обозначить эти символы (на подобии как в Notepad++)
// примерно так
for( int i = 0; i < size; ++i ){
if( buf[ i ] == '\0' ) printf( "[NUL]" );
else if( buf[ i ] == '\1' ) printf( "[SOH]" );
else if( buf[ i ] == '\2' ) printf( "[STX]" );
else if( buf[ i ] == '\3' ) printf( "[ETX]" );
else if( buf[ i ] == '\4' ) printf( "[EOT]" );
else if( buf[ i ] == '\5' ) printf( "[ENQ]" );
else if( buf[ i ] == '\6' ) printf( "[ACK]" );
else if( buf[ i ] == '\7' ) printf( "[BEL]" );
else if( buf[ i ] == '\n' ) printf( "\n" );
else printf( "%c", buf[i] );
}
Оборудование для ресторана: новинки профессиональной кухонной техники
Частный дом престарелых в Киеве: комфорт, забота и профессиональный уход
Возник вопрос, возможно ли реализовать такую программу что бы:
есть FBX файлхотел написать загрузчик но не знаю что делать
Нужна простая, красивая и минималистичная IDE ( редактор с плагинами (?)) для Windows