【问题标题】:How to convert nsstring to cString?如何将 nsstring 转换为 cString?
【发布时间】:2011-04-30 13:45:15
【问题描述】:

我有一个 nsstring(filePath),它包含音频文件的路径。我想打开音频文件,所以我想将 nsstring 转换为 Cstring。

  fopen([filePath cStringUsingEncoding:1], "r");

上面这行是否正确,因为我也可以使用fopen([filePath cString], "r");。在一些网站中提到使用 UTF8stringEncoding。哪个是正确的 NSString 到字符串转换?

【问题讨论】:

  • 英文写作小贴士:标点符号后面应该有一个空格,以便将句子和短语分开。这也允许更自然的换行形式,因此(例如,从您的文本中)字符串 not,because 不会被 Web 客户端视为一个单词。

标签: iphone ios c string-conversion


【解决方案1】:

使用UTF8String:

fopen([filePath UTF8String], "r");

【讨论】:

  • 我能知道你的答案和我用的有什么区别吗?如何检查它是否工作正常?
  • @Warrior,我认为阅读文档将消除您的任何疑虑。
  • 你知道如何在 Nsdata 中转换音频文件吗?我使用导出会话但总是失败
  • 一年后,你为我节省了时间:)
【解决方案2】:

不要使用UTF8String,而是使用fileSystemRepresentation

您应该这样做,因为 HFS+ 或其他文件系统与 Unicode 系统不严格兼容。另一个原因:此方法通过将抽象路径和扩展分隔符(分别为“/”和“.”)替换为当前文件系统的等效字符来操作。

【讨论】:

    猜你喜欢
    • 2023-03-28
    • 1970-01-01
    • 2023-04-01
    • 2011-11-23
    • 2012-03-07
    • 2011-07-29
    • 2014-11-27
    • 2012-09-18
    • 1970-01-01
    相关资源
    最近更新 更多