問題タブ [fileinputstream]

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

java - getResourceAsStream() と FileInputStream

webapp でファイルをロードしようとしていて、FileNotFound使用すると例外が発生しましたFileInputStream。ただし、同じパスを使用して、ファイルを読み込んだときにファイルを読み込むことができましたgetResourceAsStream()。2 つの方法の違いは何ですか? また、一方が機能し、他方が機能しないのはなぜですか?

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

java - アプレットのjTableにCSVデータを入力します。コンパイルされ、実行され、データ/テーブルは表示されません

CSVデータをJavaアプレットにロードしようとしています。データをJavaプログラムにロードすることはできましたが、これをJavaアプレットに再作成しようとすると、問題が発生します。これが私が持っているコードですが、実行されますが何も表示されません:

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

java - FileInputStream ネガティブ スキップ

が負のjava.io.FileInputStream.skip(n)ときの操作履歴についてもっと調べようとしています。InputStream のドキュメントnによると:

n が負の場合、バイトはスキップされません。

Sun の FileInputStream の実装は、代わりにIOException をスローしていたようです。これはJavadoc にも記載されています。

n が負の場合、この場合 InputStream スーパークラスの skip メソッドは何もしませんが、IOException がスローされます。

私はそれを試してみたところFileInputStream.skip(-10)、実際に返されたことがわかりました-10! 例外をスローせず、0 を返さず、-10 を返しました。(Sun の Java 1.5.0_22 と Sun の Java 1.6.0_18 を試しました)。

これは既知のバグですか? なぜ修正されていないのですか、またはドキュメントがそのまま維持されているのはなぜですか? 誰かがこの問題についての議論を教えてもらえますか? 何も見つかりません。

0 投票する
4 に答える
1078 参照

java - Java では、テキストファイル内の行を後ろから前に反復するにはどうすればよいですか

基本的に、次のようなテキスト ファイルを取得する必要があります。

フレッド・
バーニー・
ヘンリー

ファイルから順番に読み取ることができます

ヘンリー
・バーニー
・フレッド

私が読んでいる実際のファイルは30MBを超えており、ファイル全体を読み取り、配列に分割し、配列を逆にしてそこから移動するのは完全な解決策ではありません。時間がかかりすぎます。私の具体的な目標は、最初に出現する文字列 (この場合は "InitGame") を見つけて、その行の先頭の位置を返すことです。

私は以前にPythonでこのようなことをしました。私の方法は、ファイルの最後 (1024) までシークし、最後に到達するまで行を読み取り、前の開始点から別の 1024 をシークし、tell() を使用して、前の行に到達したときに停止することでした。出発点。そのため、探しているテキストが見つかるまで、これらのブロックをファイルの末尾から逆方向に読み取ります。

これまでのところ、Java でこれを行うのにかなりの時間を費やしています。ボルチモアの近くに住んでいる場合は、焼きたてのクッキーを手に入れることになるかもしれません。

ありがとう!

より詳しい情報:

私が読んでいるファイルは、私がサーバーをホストしているゲームのログファイルであるため、逆方向に検索する必要があります (これは、アーバン テラーの |err| サーバーです。チェックしてください)。ログ ファイルはゲームで発生するすべてのイベントを記録し、プログラムは各イベントを解析して処理し、それに基づいて行動します (たとえば、人々のヘッドショットを追跡し、d バッグである人々を自動的にキックします)。 )。最新の InitGame エントリまでさかのぼって検索し、すべてのプレーヤー オブジェクトをインスタンス化して、そのゲームの開始以降に処理する必要があったものをすべて処理できるようにする必要があります。ファイルには何百もの InitGame イベントがありますが、最後のイベントが必要です。逆方向に検索する必要のない、これを行うためのより良い方法があれば、私に知らせてください。

ありがとう

0 投票する
9 に答える
63346 参照

java - JavaFileInputStreamObjectInputStreamがファイルEOFの終わりに到達します

readObjectを使用してバイナリファイルの行数を読み取ろうとしていますが、IOExceptionEOFが発生します。私はこれを正しい方法でやっていますか?

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

java - FileInputStream が NullPointerException をスローする

nullpointerexception が発生しています。実際に何が原因なのかわかりません。fileinputstream は securityexception のみをスローするという Java ドキュメントを読んだので、この例外がポップアップする理由がわかりません。ここに私のコードスニペットがあります。

ここに私のスタックトレースがあります:

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

spaces - FileInputStream を使用してテキスト ファイルを String に読み取った String 内の追加のスペース

テキストファイルを文字列変数に読み込もうとしています。テキスト ファイルには複数の行があります。「読み取り」コードをテストするために文字列を出力すると、すべての文字の間に追加のスペースがあります。String を使用して文字バイグラムを生成しているため、スペースによってサンプル テキストが役に立たなくなります。コードは

アドバイスをいただければ幸いです。

ありがとう。

0 投票する
16 に答える
147160 参照

java - Java を使用してテキスト ファイルからデータを読み取る

Java を使用してテキスト ファイルを 1 行ずつ読み取る必要があります。available()のメソッドを使用FileInputStreamして、ファイルをチェックしてループします。ただし、読み取り中は、最後の行の前の行の後でループが終了します。つまり、ファイルに 10 行ある場合、ループは最初の 9 行だけを読み取ります。使用されるスニペット:

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

java - FileReaderとFileInputReader。スプリットvsパターン

約2Gのファイルで作業しています。ファイルを1行ずつ読んで、特定の用語を見つけたいと思います。FileReaderまたはFileInputStreamのどのクラスをより適切に使用できますか?そして、どうすれば特定の単語を効率的に見つけることができますか。split()メソッドを使用しているだけですが、java.util.regex.Patternクラスをjava.util.regex.Matcherクラスと組み合わせて使用​​できる可能性があります。

したがって、質問は次のとおりです。どのクラスを使用できますか:FileReaderまたはFileInputStream?splitメソッドまたは正規表現クラスを使用できますか

誰かがこの質問に対する答えを持っていますか?サンズ。

0 投票する
5 に答える
21884 参照

java - BufferedInputStream の使用

この投稿の前に、1 つの注意をさせてください。Javaに関しては全くの初心者です。しばらくの間、PHP のオンとオフをプログラミングしてきましたが、デスクトップ アプリケーションを作成する準備ができていたので、さまざまな理由で Java を使用することにしました。

私が取り組んでいるアプリケーションは初期段階 (5 クラス未満) にあり、ローカル ファイルからバイトを読み取る必要があります。通常、ファイルは現在 512kB 未満です (ただし、将来的に大きくなる可能性があります)。現在、FileInputStreamファイルを 3 バイト配列に読み込むために a を使用しています。これは私の要件を完全に満たしています。ただし、言及されているのを見て、BufferedInputStream現在これを行っている方法が最適かどうか、または a も使用する必要があるかどうか疑問に思っていBufferedInputStreamました。

私はいくつかの調査を行い、Stack Overflow に関するいくつかの質問を読みましたが、BufferedInputStream. 私の状況では、バイトを読み取った最初の配列はほんの数バイト (20 未満) です。受け取ったデータがこれらのバイトで適切であれば、残りのファイルをさまざまなサイズのさらに 2 つのバイト配列に読み込みます。

また、多くの人が特定のケースでどちらがより効率的かを確認するためにプロファイリングについて言及していると聞いていますが、私はプロファイリングの経験がなく、どこから始めればよいかよくわかりません。これについてもいくつかの提案が欲しいです。

とても長い投稿で申し訳ありませんが、これらのことを行うための最良の方法を学び、理解したいと思っています. 私は常に自分の決定を二番目に推測する悪い癖があるので、フィードバックをいただければ幸いです. ありがとう!