問題タブ [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 に答える
396 参照

php - MySQL から PHP から NSData から NSString へ - UTF8 エンコーディングはどこで間違っていますか?

Web サーバー上の MySQL データベースと Objective-C Cocoa デスクトップ アプリとの間のブリッジとして、単純な PHP Web サービスを作成しようとしています。私が知る限り、チェーン内のすべてのリンクは UTF-8 で動作していますが、非標準の文字を Cocoa で表示することはできないようです。代わりに、私のインターフェイス要素はエスケープのみを表示します。

どの段階でもこの問題を解決できる解決策を受け入れます。PHPとObj-C側を書いているので、サーバー側の問題でもクライアント側の問題でも対応できるはずです。この時点で、どのモグラを叩くべきかわかりません。

データベース

情報は MySQL データベースのテーブルから取得されます。データベース照合と各フィールドは utf_general_ci に設定されます。

PDO

私の PHP Web サービスは、PDO を使用してデータをフェッチします。

PHP

次に、データをエコーし​​ます。

NSDATA

デスクトップ アプリは、NSURLConnection を使用してこのデータをフェッチします。

NSString

最後に、UTF8 文字列エンコーディングを指定して、データから文字列を取り出します。

この文字列をデバッガーで表示するか、NSTextView に送信すると、表示されるのは \u エスケープだけです。

ボルシア M\U00f6nchengladbach

Quer\U00e9taro

レアル エスパ\U00f1a

何か不足していますか?これらの脱出はどこから来るのですか?

0 投票する
1 に答える
121 参照

nsstring - NSString はクラス バージョン XXXX をデコードできません

独自のキー付きNSCoderサブクラスを実装していますが、NSString のデコードに失敗しています。

次のようなことをすると:

次に、次の「キャッチされていない例外」がスローされます。

12345 が のこのメソッドから来ているところMyUnarchiver、私は推測します:

同様に、nil NSCoderatをスローするNSStringinitWithCoder:、上記と同じエラーが発生しますが、バージョン番号は 0 です。

メソッドで何を実装する必要があるのか​​ わからないという事実と関係があるのではないかと思いますversionForClassName:Archives and Serializations: Subclassing NSCoder referenceからでも、これについて多くを収集することはできません。

0 投票する
1 に答える
610 参照

ios - ios stringByAddingPercentEscapesUsingEncoding 変換が修正されていません

2ofsjw0234lnc.jpg\t2m03fcsmaokwf.jpg\nurl パラメータとしてエンコードしたいコンテンツがあるので、以下のようなコードを使用します。

出力は2ofsjw0234lnc.jpg%5ct2m03fcsmaokwf.jpg%5cn 私が望んでいたものではありません2ofsjw0234lnc.jpg%092m03fcsmaokwf.jpg%0d%0a、エスケープ文字は私が望んでいたように変換されません。「\」のみが変換されています。

それで、あなたは何をアドバイスできますか?

0 投票する
1 に答える
1371 参照

objective-c - iOS:NSData の正しいエンコーディングを検出する

NSDataオブジェクトを表すオブジェクトがありますNSString。文字列を取得するために使用-[NSString initWithData:encoding:]します。ここでの問題は、正しいエンコーディング タイプをどのように知ることができるかということです。

ありがとう。

編集: 私はテストして見つけました: がNSDataA でエンコードされていると仮定し、エンコード B を使用してNSString. 文字列が nil になることもありますが、文字列が nil にならないことがあります。これは厄介なコードです。そのため、各エンコーディング タイプをテストしても正しい文字列を取得できません。

0 投票する
0 に答える
105 参照

macos - すべてのNSStringEncodingをNSUTF8StringEncodingに変更する関数がありますか

HTMLコードをダウンロードしてHTMLファイルに保存したいのですが、NSUTF8StringEncoding、NSISOLatin1StringEncodingなど、HTMLファイルに使用されるエンコーディングの種類があります。ここでは、エンコーディングの異なるファイルを同じものに変更する機能があり、Webビューがhtmlファイルをロードすると、通常どおりに見えます。

0 投票する
1 に答える
239 参照

ios - iOSは英語とドイツ語の文字を比較します

NSStringクラスで利用可能な文字列検索「rangeOfString」メソッドを使用しています。検索する文字列と検索文字列の両方が英語であれば、完璧に検索できます。しかし、検索文字列にウムラウトやアクセントなどのドイツ語の文字(ドイツ語の文字Ä、Ö、Üなど)が含まれている場合、比較することはできません。英語とドイツ語の文字を比較/検索する正しい方法を教えてもらえますか?

0 投票する
2 に答える
1296 参照

objective-c - NSString で正しいエンコーディングを使用する

Web サイトから Unicode テキストを取得して NSString に保存しました。問題は、文字列内のテキストが正しくエンコードされていないため、記号しか表示されないことです。ウェブサイトのテキストは主にヘブライ文字です。

これは私がログに見るものです:

運がない別のエンコーディングを使用してみました。

編集:

使用後:

ログにテキストが正しく書き込まれているのを確認しましたが、エンコーディングを失わずにそれを NSData に変換するにはどうすればよいですか?

HTMLParser に渡す必要があります。

編集 (2):

私にとってうまくいったのは、正しいエンコーディングを使用して NSData を NSString に変換し、元に戻すことでした。

ご協力いただきありがとうございます。

0 投票する
0 に答える
176 参照

cocoa - 不正な NSStringEncoding - 互換性 (sic) マッピング

Cocoa プロジェクトで Xcode 4.6 を使用し、10.8 SDK を使用して 10.6 にデプロイしています。

LLVM 4.2 を使用しています。

ログ ファイルに次のエラーが散らばっています。

私は犯人を絞り込もうとしていますが、これまでのところエンコーディングを見つけることができませんでした: 0、nil、または NULL を使用する呼び出し。

質問:コード内でこのメッセージが生成されている場所を特定するにはどうすればよいですか? デバッガーでこのメッセージを中断する方法はありますか?

(encoding: のすべての使用法を自分のコードで検索しました。)

ありがとう。

0 投票する
3 に答える
1438 参照

objective-c - NSMutableURLRequest POSTメッセージのBase64の問題?

アプリとサーバー間の通信に問題があります。RNCryptorを使用してメッセージを暗号化し、それをbase64でエンコードして、リクエストでサーバーに転送します。これは、DATAヘッダーと、投稿データとしてのhttp本文の両方で行われます。POSTを介してbase64でエンコードされたメッセージを変換および転送する方法を間違えていると思います。

暗号化されたメッセージをヘッダー経由で受信すると、毎回完全に正常に復号化されます。ただし、POSTデータを介してメッセージを取得すると、さまざまな結果が得られます。ほとんどの場合、失敗します。それ以外の場合は、部分的に復号化され(最初の数文字)、20分の1程度の復号化が成功します。

Objective-cのコードは次のとおりです。

PHPコード:

よろしくお願いします!

0 投票する
1 に答える
399 参照

ios - iOS でのテキスト文字列の解析と処理

iOS でテキスト文字列を操作および処理するための最適なプログラミング アプローチを見つけたいと考えていました。ありがとう!

次のような文字を操作するために、文字列を含むファイルを取得します。

...

...

...

各文字列は順番に処理され、次の文字列にループします。

名前と次の文字列を取り除きます。

次の 3 つの文字列フラグメントを取り、別の基数に変換します。新しい結果を処理するコードがありますが、これらの短い文字列を連続して処理するために送信する方法が不明です。

次に、結果をファイルに出力します。xxx は変換された数値を表します。

...

...

...

最終結果は、最初のファイルから文字列の一部を取り出し、目的の結果で新しいファイルを作成します。