我试图将.txt文件的每一行读入一个char数组。
for(int i = 0; i <10; i++)
{
fin.getline(lineChar, 164); // place txt line into char array
for(int a = 9; a<164; a+=1) // remove first nine chars of garbage
lineChar[a-9] = lineChar[a];
name = getPlaceName(lineChar);
cout<< name<<endl;
}
我确切地知道每条线的长度(164),因为我检查并测试了它,以便在我尝试获得165个字符时崩溃。这适用于第一行,但后来我得到了胡言乱语。
Aaron
g
5
9
文本文件包含以下行:
PA4200100Aaronsburg 485 209 1349064 0 0.520877 0.000000 40.900946 -77.453383
我该如何解决这个问题?
答案 0 :(得分:1)
您可以使用std来读取文件。
std::string str;
std::vector<std::string> myvec;
while( std::getline( myfile, str ) )
{
myvec.push_back( str );
}
如果您需要在第一个9(名称)之后接下来的70个字符,您可以使用:
std:cout << str.substr( 9, 70 );