复制和粘贴UTF-8文本到和从OSX剪贴板的教程/指南

3
我正在为我的GUI API添加剪贴板支持。它以UTF-8格式输入和输出作为std string。
现在我需要添加OSX支持,但我几乎没有Objective-C的经验。是否有一些教程可以展示与std::string交互,将其从UTF-8转换为OSX本地使用的任何格式,然后将其复制到剪贴板中,反之亦然?
谢谢。
我只想能够获取一个UTF-8编码的std字符串并将其复制到OSX剪贴板中,并能够将一些文本从类似TextEdit的应用程序复制并粘贴为UTF-8字符串到我的应用程序中。
1个回答

3

字符串类在Cocoa中被称为NSString。

使用NSString initWithUTF8String方法,可以从UTF-8 char*创建Cocoa字符串。

使用NSString UTF8String方法则可以实现相反的转换。

如果需要简单粘贴,请参考以下链接:http://www.cocoadev.com/index.pl?CopyAndPaste

NSString *string = @"String to be copied";
NSPasteboard *pasteBoard = [NSPasteboard generalPasteboard];
[pasteBoard declareTypes:[NSArray arrayWithObjects:NSStringPboardType, nil] owner:nil];
[pasteBoard setString:string forType:NSStringPboardType];

谢谢!你知道怎么获取剪贴板中的字符串吗? - jmasterx

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接