Cocos2d-x3.2 文件读写

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
//GameScene.h
 
#include "cocos2d.h"
 
USING_NS_CC;
 
class GameScene : public cocos2d::Layer
{
public:
    static cocos2d::Scene* createScene();
     
    virtual bool init();
     
    void menuCallback(Ref* pSender);
     
    CREATE_FUNC(GameScene);
     
private:        //注意不能用auto关键字
    Size size;
    Sprite *sprite;
};




1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
//GameScene.cpp
 
//  Created by Jacedy on 14-8-11.
 
#include "GameScene.h"
 
USING_NS_CC;
 
cocos2d::Scene* GameScene::createScene()
{
    auto scene = Scene::create();   //创建一个场景
    auto layer = GameScene::create();   //创建一个图层
    scene->addChild(layer);
    return scene;
}
 
//初始化当前的图层
bool GameScene::init()
{
    if(!Layer::init())      //初始化父类
        return false;
     
    //获取屏幕大小
    size = Director::getInstance()->getVisibleSize();
    //auto size = Director::getInstance()->getWinSize();
     
    std::string fileName = FileUtils::getInstance()->getWritablePath() + "test.txt";  //获取写入文件的绝对路径
    char szBuff[100] = "Hello Jacedy";
     
    //向本地写入文件
    FILE *fp = fopen(fileName.c_str(), "wb");
    if (fp)
    {
        fwrite(szBuff, 1, strlen(szBuff), fp);
        fclose(fp);
        log("Write succeed");
    }
    else
        log("Write failed");
     
    //读取文件
    std::string fullPath = FileUtils::getInstance()->fullPathForFilename("test.txt"); //获取读入文件的绝对路径
     
    if(fileName.length() > 0)
    {
        fp = fopen(fileName.c_str(), "rb");
        if (fp) {
            char szReadBuff[100] = {0};
            size_t read = fread(szReadBuff, 1, strlen(szBuff), fp);
            if (read > 0) {
                log("The content of file: %s", szReadBuff);
                 
                //在窗口显示
                auto label = Label::createWithSystemFont("""Marker Felt", 50);
                label->setPosition(Vec2(size.width/2, size.height/2));
                this->addChild(label);
                label->setString(szReadBuff);
            }
        }
    }
     
     
    return true;
}
 
void GameScene::menuCallback(Ref* pSender)
{
     
}
上一篇:python-代码库 :requests 模拟登陆网站


下一篇:2011年全国软件大赛模拟题及参考答案(Java本科组)