Я написал довольно простую функцию, которая считывает возможные имена игроков и сохраняет их на карте для дальнейшего использования.По сути, в файле каждая строка - это новое имя игрока, но по какой-то причине кажется, что все, кроме фамилии, имеют какой-то невидимый символ новой строки после него.Моя распечатка показывает это так ...
nameLine = Georgio
Name: Georgio
0
nameLine = TestPlayer
Name: TestPlayer 0
Вот фактический код.Я предполагаю, что мне нужно что-то раздеть, но я не уверен, что мне нужно проверять.
bool PlayerManager::ParsePlayerNames()
{
FileHandle_t file;
file = filesystem->Open("names.txt", "r", "MOD");
if(file)
{
int size = filesystem->Size(file);
char *line = new char[size + 1];
while(!filesystem->EndOfFile(file))
{
char *nameLine = filesystem->ReadLine(line, size, file);
if(strcmp(nameLine, "") != 0)
{
Msg("nameLine = %s\n", nameLine);
g_PlayerNames.insert(std::pair<char*, int>(nameLine, 0));
}
for(std::map<char*,int>::iterator it = g_PlayerNames.begin(); it != g_PlayerNames.end(); ++it)
{
Msg("Name: %s %d\n", it->first, it->second);
}
}
return true;
}
Msg("[PlayerManager] Failed to find the Player Names File (names.txt)\n");
filesystem->Close(file);
return false;
}