iOS:使用示例 Poco::BinaryReader & Poco::BinaryWriter

iOS: example of usage Poco::BinaryReader & Poco::BinaryWriter

本文关键字:Poco BinaryReader BinaryWriter iOS      更新时间:2023-10-16

有人可以给我看一下使用示例吗 Poco::BinaryReader 和 Poco::BinaryWriter 在 iOS 5.x 上带有 bynary 流 -> Objective-C++ ?

昨天我发送了有关"如何创建和使用C++类"的问题,但它没有回答我上面的问题。

Poco社区论坛和OpenFrameworks论坛看起来已经死了,所以我在这里。

谢谢。

好吧,没有人愿意帮忙。

我在上帝的帮助下自己做到了。

下载开放框架并配置到您的目标项目;

代码示例:

#import "AppDelegate.h"
#import "Poco/MemoryStream.h"
#import "Poco/BinaryWriter.h"
#import "Poco/BinaryReader.h"
@implementation AppDelegate{
    Poco::BinaryWriter *_myBinaryWriter;
    Poco::BinaryReader *_myBinaryReader;
}
@synthesize window = _window;
- (void)dealloc
{
    [_window release];
    [super dealloc];
}
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];
    self.window.rootViewController = [[UIViewController new] autorelease];
    int bufferSize = 512;    
    char *_buffer = (char *)malloc(bufferSize);
    // >> WRITE BLOCK <<   
    Poco::MemoryOutputStream *outStream = new Poco::MemoryOutputStream(_buffer, bufferSize);
    _myBinaryWriter = new Poco::BinaryWriter(*outStream);
    (*_myBinaryWriter) << 1234567890;
    (*_myBinaryWriter) << (std::string)"some string";
    (*_myBinaryWriter) << 3.14f;
    delete(_myBinaryWriter);
    delete(outStream);
    // >> READ BLOCK <<   
    Poco::MemoryInputStream *inStream = new Poco::MemoryInputStream(_buffer, bufferSize);
    _myBinaryReader = new Poco::BinaryReader(*inStream);
    int i = 0;
    std::string s;
    float f = .0f;
    (*_myBinaryReader) >> i >> s >> f;
    delete(_myBinaryReader);
    delete(inStream);
    NSLog(@"ReadInt = '%i'", i);
    NSLog(@"ReadString = '%@'", [NSString stringWithUTF8String:s.c_str()]);
    NSLog(@"ReadFloat = '%f'", f);
    [self.window makeKeyAndVisible];
    return YES;
}
@end

我有美好的一天:)