cocos2d-x读取txt文本中的数字并转换为整形数组

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",那么就表示同时以空格和换行作为分割字符。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值