Zapis danych z pliku do tablicy dwuwymiarowej

0

Witam,
Mam taki mały problem z jedną funkcją. Możliwe że mam jakiś błąchy błąd, który Od razu wam się nawinie, ale nie mogę sobie z tym poradzić.
Plik wygląda tak:
6 rzędów po 24 liczby w każdym, ułożone obok siebie, bez spacji.
a to moja funkcja:

bool LoadFile( std::string FileName )
{
	std::fstream File;
	File.open(  FileName, std::ios::in );
	if( !File.is_open() )
	{
		std::cout <<"blad ladowania pliku";
		return false;
	}
	char tmp;
	for( int i = 0; i != 5; i++ )
	{
		for( int j = 0; j != 23 ; j++)
		{
			File.get( tmp );
			std::cout <<tmp;
			if( tmp != '\n' )
			{
			Map[i][j] = tmp;
			}
		}
	}
	
	File.close();
		//tymczasowe sprawdzenie działania :)
	for( int i =0; i !=6; i++)
	{
		for(int j = 0; j != 24; j++ )
		{
			std::cout <<Map[i][j];
		}
		std::cout <<std::endl;
	}
	return true;
}
 

A i drugi problem, jak zamienić char'a na int? Przy próbie konwersji za pomocą static_cast wychodzą dziwne liczby.

0

Poradziłem sobie z odczytem, jednak potrzebny mi jest jakiś sposób na zamianę char na int. Dodam że przeglądałem kilka sposobów z tej strony, ale coś było nie tak z moim charem. :(

0

Char -> int:

static_cast<int>(znak)
0

Jeżeli masz '8' i chcesz zmienić na inta, najpierw zrób:
znak =- '0';
Potem konwersja na inta.

0

Albo użyj gotowej funkcji że standardowej biblioteki atoi()

1 użytkowników online, w tym zalogowanych: 0, gości: 1