繁体   English   中英

从NSString逃脱RTF文件的非ASCII字符

[英]Escape Non-ASCII chars from an NSString for RTF-file

我需要在iOS设备上生成rtf文件。
由于RTF仅支持带转义的ASCII,因此我需要找到一种解决方案来转义非拉丁字符,以便ü变成\\'fc,ä\\'e4和ë\\'eb

我在NSString上的Category中有以下代码

self = [NSString stringWithFormat:@"{\\rtf1\\ansi{\\fonttbl\\f0\\fswiss Helvetica;}\\f0\\pard %@ \\par}", self ];
[[self dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES] writeToFile:filenameStr atomically:YES];

但这只会将ü变成u,ä变成a,等等。

我该如何纠正UTF-8对非ASCII字符的转义?

我找到了解决方案-至少对于我的情况:

self = [NSString stringWithFormat:@"{\\rtf1\\mac{\\fonttbl\\f0\\fswiss Helvetica;}\\f0\\pard %@ \\par}", self ];
[self writeToFile:filename atomically:YES];

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM