0

やあみんな、私はウェブサーバーからyamlファイルをプルダウンしています。私NSInputStreamはローカルのyamlファイルでうまく機能します(file://filename.yaml urlスキームを使用)

関連するコードスニペットは次のとおりです。

NSInputStream * stream = [[NSInputStream alloc] initWithURL:yamlURL];

yaml urlはhttp:// myip:8000 / asset / test.yamlのようなものです。ブラウザで開くと、ファイルがダウンロードされます...

何かご意見は?

4

2 に答える 2

1

これには遅すぎますが、私はこの正確な問題を解決したので、ここに行きます:

ドキュメントによると、

The NSStream class does not support connecting to a remote host on iOS.

これはばかげているように聞こえますが、initWithURLはローカルファイルに対してのみ機能します。しかし、簡単な修正があります...

アップルの完全な説明とコードサンプルはここにあります: https ://developer.apple.com/library/mac/documentation/cocoa/Conceptual/Streams/Articles/NetworkStreams.html#//apple_ref/doc/uid/20002277- BCIDFCDI

于 2014-01-07T10:46:00.477 に答える
0

initWithURLの後、* streamで何かしていることはありますか?

ローカルファイルで初期化されたInputStreamからコンテンツを取得する場合は、NSOutputStreamを作成して、InputStreamを取得してSafariにリダイレクトする必要があります。したがって、initWithURLだけではないと思います。urlを使用して呼び出すと多くのことがわかりますが、safariでhttp:// urlを開くと、コンテンツタイプが特定され、ファイルが出力されます。しかし、それがマルチパートのmime yamlファイルである場合、safariはコンテンツを表示できないと思います。

于 2012-07-21T13:13:29.490 に答える