txt中的文本数据为。
8
10
12
11
15
13
12
15
16
15
16
18
实现函数为。
void txtToint()
{
//获取文件路径。
std::string path = FileUtils::getInstance()->fullPathForFilename("unit_number.txt");
//创建文件缓冲区及缓冲区大小。
unsigned char * buffer = NULL;
unsigned long bufferSize = 0;
//获取文件内容。
buffer = FileUtils::getInstance()->getFileData(path.c_str(), "r", &bufferSize);
buffer[bufferSize] = '\0';
//字符串分割
char * p = strtok((char *)buffer, "\n");
int i = 0;
while(p)
{
//字符串转数字
a[i] = atoi(p);
i++;
p = strtok(NULL, "\n");
}
//清除缓冲区。
delete [] buffer;
buffer = NULL;
}
需要注意的是,再strtok函数的第二个参数中是可以输入多个字符的。
比如,如果参数为" \n",那么就表示同时以空格和换行作为分割字符。