1
我使用SDL在Android上,试图加载该文件:十六进制值在Android
00 01 02 00 01 02 00 01 02 00 01 02 00 01 02 00
01 02 00 01 02 00 01 02 00 01 02 00 01 02 00 01
02 00 11 04 04 04 04 04 04 04 04 04 04 05 01 02
00 01 10 03 03 03 03 03 03 03 03 03 03 06 02 00
01 02 10 03 08 08 08 08 08 08 08 03 03 06 00 01
02 00 10 06 00 01 02 00 01 02 00 10 03 06 01 02
00 01 10 06 01 11 05 01 02 00 01 10 03 06 02 00
01 02 10 06 02 09 07 02 00 01 02 10 03 06 00 01
02 00 10 06 00 01 02 00 01 02 00 10 03 06 01 02
00 01 10 03 04 04 04 05 02 00 01 09 08 07 02 00
01 02 09 08 08 08 08 07 00 01 02 00 01 02 00 01
02 00 01 02 00 01 02 00 01 02 00 01 02 00 01 02
成一个std :: istringstream这样的:
int blocks;
char buf[256];
SDL_RWops *rw=SDL_RWFromFile("files/test.map","rb");
blocks=SDL_RWread(rw,buf,16,256/16);
SDL_RWclose(rw);
SDL_Log("Read %d 16-byte blocks",blocks);
SDL_Log("%s",buf);
std::string stringvalues = buf;
std::istringstream map (stringvalues);
当我尝试查看BUF的使用SDL_LOG(“%S”)的内容,我没有看到什么我期待上面:
09-22 16:24:32.654 8651 8668 I SDL/APP : 00 01 02 00 01 02 00 01 02 00 01 02 00 01 02 00
09-22 16:24:32.654 8651 8668 I SDL/APP : 01 02 00 01 02 00 01 02 00 01 02 00 01 02 00 01
09-22 16:24:32.654 8651 8668 I SDL/APP : 02 00 11 04 04 04 04 04 04 04 04 04 04 05 01 02
09-22 16:24:32.654 8651 8668 I SDL/APP : 00 01 10 03 03 03 03 03 03 03 03 03 03 06 02 00
09-22 16:24:32.654 8651 8668 I SDL/APP : 01 02 10 03 08 08 08 08 08 08 08 03 03 06 00 01
09-22 16:24:32.654 8651 8668 I SDL/APP : 02 00 �wNL���5�
有我给首席方式t每个char元素的十六进制值,以便我可以更好地进行调试?或者如果任何人有更好的主意随意建议,谢谢
该功能很有帮助,谢谢。你也是对的,只有前80个字节被SDL_RWread读取 – Hoofamon