2

iPhone 開発用のファイル システム パスをエスケープするためのシステム ライブラリはありますか? ファイル名がサードパーティの値に基づいているファイルを読み書きする必要があるため、実際に書き込んでいるパスが適切で安全であることを確認したいと考えています。

これは、すべての開発者がおそらく書き直すべきではない「単純な」タイプの関数であるため、これを行うNSライブラリがあると思っていましたが、存在する場合は見つかりません。

ありがとう!

編集: 返信ありがとうございます。

in:  @"~/Foo/Bar"
out: @"__Foo_Bar" or @"FooBar" etc.

基本的に、ファイルパスコンポーネントから安全でない文字を取り除きます。

調査を続けた結果、「/」以外のほぼすべての Unicode 文字がファイル パスで許可されているようです。ただし、ファイル パスは通常壊れやすく、エスケープ シーケンスなどで操作できます。そのため、Apple の優れた頭脳が、ファイル パス コンポーネントから安全でない値を削除する API を備えていることを願っています。

4

2 に答える 2

1

NSString を試すことができます- (NSString *)stringByStandardizingPath

于 2009-04-13T23:07:52.907 に答える
0

ホワイトリスト、おそらく[a-zA-Z0-9_. ]、またはもう少し複雑なものを使用し、URLがスペースを「%20」にエンコードする方法と同様に、他のものを16進数にエンコードするだけです

于 2009-04-16T21:26:46.757 に答える