iphone - 文本编辑无法识别编码

标签 iphone objective-c utf-8 nsstring

我正在将字符串写入文件,如下所示:

NSString *docsDirectory = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
NSString *path = [docsDirectory stringByAppendingPathComponent:[NSString stringWithFormat:@"%@.txt", nameOfFile]];

[fileString writeToFile:path atomically:YES encoding:NSUTF8StringEncoding error:NULL];

出于某种原因,TextEdit 无法识别 NSUTF8StringEncoding。我怎样才能确保它确实有效?

希望得到一些帮助,Fabian

最佳答案

我刚刚重新创建了您的代码,它对我来说工作得很好。 TextEdit 可以很好地读取文件。

#import <Cocoa/Cocoa.h>

int main(int argc, char *argv[])
{
  NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];

  NSString *fileString = @"Blah blah.";
  NSString *nameOfFile = @"blah";
  NSString *docsDirectory = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
  NSString *path = [docsDirectory stringByAppendingPathComponent:[NSString stringWithFormat:@"%@.txt", nameOfFile]];
  printf("fileString:\n%s\n", [fileString UTF8String]);
  printf("docsDirectory:\n%s\n", [docsDirectory UTF8String]);
  printf("path:\n%s\n", [path UTF8String]);
  /*
  fileString:
  Blah blah.
  docsDirectory:
  /Users/daniel/Documents
  path:
  /Users/daniel/Documents/blah.txt
  */
  [fileString writeToFile:path atomically:YES encoding:NSUTF8StringEncoding error:NULL];
  [pool release];
  return 0;
}

我唯一能想到的是你的 TextEdit 首选项,这是我的: alt text

关于iphone - 文本编辑无法识别编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4634106/

相关文章:

iphone - 如何在我的代码中使用编译器#warning?

ios - 保留段落标签的iOS NSString Flatten Html

java - 私钥解密对称 key ,但对称 key 联网时给出不同的结果?

iphone - 更改 UInavigationbar 标题后页

ios - AFNetworking:接收“数字”而不是GET请求文本

iOS Typhoon DI 框架替代 objective-c 中的单例

ios - os_log timeval格式的Clang错误

java - Eclipse 错误的 Java 属性 UTF-8 编码

php - 特定字符是否可以使用 LOAD DATA LOCAL INFILE 停止数据插入?

ios - Oracle MAF 应用程序无法在 iPhone 上加载远程 URL