問題タブ [nsfilehandle]

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 投票する
0 に答える
215 参照

objective-c - NSFileHandle writeData ブロックのリスク

私のアプリケーションは、TCP 接続のグループに定期的にデータの短いパケットを書き込む必要があり、それぞれが NSFileHandle によってカプセル化されています。NSFileHandle は非同期読み取りを提供しますが、書き込みには writeData を使用する必要があると思います (私の Objective-C 実装である GNUStep には、残念ながら writeabilityHandler プロパティがありません)。

私の質問は次のとおりです。TCP ファイル記述子が書き込みの準備ができていない場合、 writeData は例外をスローしますか、それとも無期限にブロックしますか? これをテストしようとしましたが、接続の反対側を適切な状態にするのは困難です。私にとって理想的なのは、 writeData が例外をスローすることで、後でもう一度書き直すことができます。

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

ios - キャッチされない例外 'NSFileHandleOperationException'

このコードを使用しながら、自分のサーバーから複数のファイルを同時にダウンロードしようとしています:

pic1.png 、 pic2.png 、 pic3.png の 3 つの写真があります。このコードを実行すると、アプリは pic3.png という名前の破損したファイルを 1 つだけ保存し、自動的にクラッシュします。3 つのファイルすべてをダウンロードする必要があります。

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

ios - ローカル ファイルの 12 バイト データを置き換えるにはどうすればよいですか?

私のアプリは、最初の 12 バイト データが暗号化されたファイルをダウンロードするため、ドキュメントからこのファイルを読み取り、最初の 12 バイト データを復号化する必要があります。

私の最初の試みは、ファイル全体を読み取って復号化し、再度ファイルに書き込むことでした。ただし、ファイルが大きすぎると、大量のメモリが消費されます。

では、最初の 12 バイトのデータを読み取って置き換える方法はありますか?

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

objective-c - echo が NSTask および readInBackgroundAndNotify で機能しない

次の Obj-C コードとそのログ出力があります。NSFileHandle から出力が得られない理由を誰か教えてもらえますか?

ログ:

同期的に行うか、https://stackoverflow.com/a/16274541/1015200のアプローチを使用すると、動作させることができます。その他の手法やバリエーション (performSelectorInBackground なしでタスクを起動するなど) は失敗しました。通知を使用して動作させることができるかどうかを本当に知りたいです。それで何か助けが得られれば、それは素晴らしいことです。

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

objective-c - ファイルに色付きのテキストを書き込むことはできますか?

いくつかのログを .txt ファイルに書き込む必要があります。より明確にするために、一部のテキストに色を付けたいと思います。

どうすればこのトリックを行うことができますか?

ここで私の機能

これは私が私の機能を使用する方法です:

UIColor でラベルを宣言し、そのテキストを関数に渡そうとしましたが、成功しませんでした。

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

ios - iOSでデータをチャンクでディスクに書き込む方法

こんにちは私のアプリでは、pdf ファイルをダウンロードしていますが、その合計サイズがチャンクになっています。そのデータをチャンクで取得した後、NSData オブジェクトに格納し、残りのチャンクを同じオブジェクトに追加します。このアプリを実行している間、メモリ不足の警告でクラッシュします。次にディスクにデータを書き込み、サンドボックスに書き込まれたファイルにデータを追加する方法はありますか。ファイルが 400 Mb を超える場合があります。助けてください。