问题标签 [nsstringencoding]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
61 浏览

objective-c - 使用正则表达式查找 NSString 的子字符串

我正在尝试使用 NSRegularExpression 从 NSString 获取子字符串。我不想要匹配的数量或替换字符串,我想要匹配正则表达式的字符串

我正在寻找的是:

我正在尝试尽可能少地使用 NSRange/NSMakeRange。任何人都可以帮助我吗?

0 投票
1 回答
1947 浏览

ios - 自 iOS 8.2 更新以来,stringWithUTF8String 返回 nil

我一直在使用 stringWithUTF8String 将我的 NSData 转换为 NSString,如下所示:

它运行良好;但是,自从 8.2 iOS 更新以来,[[NSString stringWithUTF8String:[responsedata bytes]]返回 nil。

我通过使用以下代码解决了这个问题:

在这两种情况下responsedata,印刷的描述都是一样的:<OS_dispatch_data: data[0x7aeb6500] = { leaf, size = 7, buf = 0x7c390360 }>

我的问题是:为什么第一个选项会返回 nil,为什么在 iOS 8.2 更新后突然返回?

0 投票
1 回答
186 浏览

ios - iOS过滤掉无法编码的字符

嗨,我正在开发一个 iOS 应用程序,我面临以下问题。

我有一个NSString包含繁体中文,简体中文和可能一些特殊字符,如“®”。

当我想将其转换NSStringNSData使用 时

NSData返回为零,我想删除无法编码的无效字符 。

我怎样才能做到这一点?谢谢!!

0 投票
3 回答
4943 浏览

ios - NSURL URLWithString 返回 nil

我被困在一个非常明显的NSURL类方法中,URLWithString我正在传递 astring并且在创建URL它时返回nil,我string是完美的。当我在浏览器中使用相同的字符串时,它工作正常。我正在使用以下方法转换NSStringNSURL

我还尝试使用以下方法首先对我的字符串进行编码

%10 becomes the suffix of my url with around 100+ repetition. 如果有人知道什么%10是或可以做些什么来克服这个问题。

这是我的urlString
评论说字符太多但很明显字符不多

0 投票
1 回答
158 浏览

nsstring - NSData 到 NSString 丢失数据

我正在尝试将二进制文件转换为文本,问题是文件的很大一部分没有以 ascii 编码,最终成为特殊字符。我在用着

但我只能在 20000 字节的数据块中返回几个字符。我希望能够看到的是所有文本(即使大多数都是废话),这是我使用二进制编辑器打开文件时得到的。

在此处输入图像描述

0 投票
1 回答
182 浏览

objective-c - 防止 NSString 转义内容

对不起,也许是一个新手问题。

由于各种原因,我被一个看起来像这样的特殊字符串卡住了:

我可以以某种忍者的方式删除双 \\ 并强制 NSString 了解该字符串是统一编码的,应该像这样读取

我尝试了不同的策略尝试替换所有斜杠(“\”),但只要我添加一个(“\”)NSString 就会添加另一个来逃避第一个。我被困在这里...

是否可以防止 NSString 转义我的字符串?

更新

我知道这是一个特例。从读取用户驱动器上的文件的终端程序读取输出。通过 NSTask,我将输出捕获到 NSString 中,以便解析并将其拆分为数组。只要没有非ASCII字符,它就可以很好地工作。HFS+ 使用称为 NFD 的稍微不同的 Unicode 对非 ascii 字符进行编码。

当我捕获响应时,ÅÄÖ 已经在 qoutes 中编码,如下所示:

当我创建一个 NSString 并使用捕获的响应时,它第二次被 NSString 转义。

我知道这不是最佳选择,但现在我无法控制终端程序输出的内容。通常当使用这种 NFD 编码创建 NSString 时,Objectiv-C 会为您处理编码/解码。但是由于我有一个包含混合和双重转义内容的字符串,我很难创建它并使 NSString 了解内容是用这种编码编码的。

基本上我想这样做:

但在幕后 NSString 总是用另一个 \ 为你转义 \ 所以我想要一种方法来创建“原始”字符串而不干扰 NSString 。

尝试了各种方法来尝试在 NSString 上执行 Unicode 编码,但这一切都归结为 NSString 总是捕获和转义 \。

任何提示 och 点表示赞赏!

0 投票
1 回答
1531 浏览

ios - 将未知编码的TXT文件转换为字符串

如果编码类型未知,如何将纯文本 (.txt) 文件转换为字符串?

我正在开发一项功能,允许用户将 txt 文件导入我的应用程序。这意味着该文件可以在任意数量的应用程序中创建,使用被认为对纯文本文件有效的各种编码中的任何一种。我的理解是这可能包括(ASCII、UTF-8、UTF-16、UTF-16BE、UTF-16LE、UTF-32、UTF-32BE、UTF-32LE 或 EBCDIC?!)

使用以下方法进展顺利:

然后,用户提供了一个文件,该文件在导入时导致内容为空。我在 XCode 调试中查看了该文件,并看到 Cocoa 错误 261,NSStringEncoding=4。

我知道的:

  • 用户提供的文件是使用名为 knowtes 的应用程序创建的
  • 该文件在 Mac OS X 上使用 TextEdit、TextWranger 等打开
  • 该文件包含“特殊字符”,例如变音符号(咆哮:为什么变音符号上的“u”没有变音符号?!)
  • Finder 信息显示:

种类:文字

文本/纯文本;字符集=utf-16le

我猜测文件的 utf-16le 编码是关键,因为我期待一个 NSUTF8 文件。我尝试使用 ASCII 作为最低公分母。它没有崩溃,但在原始文件中不存在的一些字符中进行了捏造。

所以我尝试先将文件转换为 NSData,希望它可以消除识别编码的需要。那没起效。

这导致我提出几个问题:

  1. 是否没有一种通用方法可以将纯文本文件内容(无论编码如何)转换为字符串(即最低公分母)?我相信这曾经是目的initWithContentsOfFile,不幸的是现在已弃用。ASCIStringEncoding 不起作用。
  2. 有什么关于将 NSUTF16 编码文件转换为我需要以不同于 NSUTF8 的方式处理的字符串?
  3. 假设文件实际上是 URF16LE,为什么以下建议也不起作用?

    /li>
0 投票
1 回答
569 浏览

ios - 在 NSURLRequest 中检测到不正确的 NSStringEncoding 值 0x0000

当我尝试在 Swift 中转换为时NSData出现NSString错误

这是我的要求:

我在这里收到错误:

我俩都试图摆脱警告错误但没有奏效:我增加到timeoutInterval200 。

我试过了:

这个解决方案在这里对我不起作用: 检测到不正确的 NSStringEncoding 值 0x0000

0 投票
2 回答
487 浏览

objective-c - how to convert this "\U202a+98\U00a0910\U00a0280\U00a05305\U202c" to string?

How to convert this \U202a+98\U00a0910\U00a0280\U00a05305\U202c to pure string +989102805305.

0 投票
1 回答
353 浏览

swift - 在 Swift 中使用 UnsafeMutablePointer 编码和解码字符串

我在将字符串与 UnsafeMutablePointers 相互转换时遇到问题。以下代码不起作用,返回错误的字符串。

游乐场文件的链接在这里。如果有人有在 Swift 中使用 UnsafeMutablePointers 处理字符串的经验,我将非常感谢一些指导,因为我在过去几天没有取得任何进展。再次感谢!