問題タブ [java.util.scanner]
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.
java - Scanner を使用して Java に非常に大きなファイルを読み込ませるにはどうすればよいですか?
ネットからコピーした次の基本機能を使用してテキストファイルを読み取ります
中・小サイズのファイル(1~2万行のデータを含む)では問題なく動作しますが、50万行を含むファイルでは動作しませんでした。エラーは発生していません (少なくとも誰も見ていません)。それで何が起こっているのですか?このような大きなファイルを準備できるようにするには、ここで何をすればよいですか?
注: 4 GB の RAM で Windows Server 2008 を実行するテスト マシンでは、既に 2 GB のヒープを増やしました。しかし、これはあまり役に立ちませんでした!
ここで何をすべきか誰か教えてください。
更新 01
以下は出力です
始める
java.util.Scanner[delimiters=\p{javaWhitespace}+][position=0][match valid=false][need input=false][source closed=false][skiped=false][group separator=\,] [小数点記号=.][正の接頭辞=][負の接頭辞=\Q-\E][正の接尾辞=][負の接尾辞=][NaN文字列=\Q�\E][無限大文字列=\Q∞\E ]
トライ・ブラック終了
終わり
java - ActionListener/actionPerformed クラスのスキャナー エラー
みなさん、私は Java で作成された 16 進ダンプ ユーティリティに取り組んでいます。hex/ascii ロジックの前に使用していた Scanner に問題があります。
現在、デバッグの理由から除外されているロジックとその他のいくつかのものがありますが、何が起こっているのか知っている人がいれば、知りたいです! ヒントは大歓迎です。
java - Java: スキャナー区切り文字をトークンとして使用
スキャナーに特定の区切り文字をトークンとして使用させる良い方法を見つけようとしています。たとえば、テキストを数字のチャンクと数字以外のチャンクに分割したいので、理想的には区切り文字を\D
に設定し、useDelimiterAsToken のようなフラグを設定するだけですが、API を簡単に調べた後、私はそうではありません何でも思いつきます。現在、区切り文字に先読み/後読みを組み合わせて使用することに頼らなければなりませんでしたが、これはやや苦痛です:
これは、数字から非数字へ、またはその逆への遷移を探します。これを行うためのより健全な方法はありますか?
java - 「 | 」に一致する正規表現
クラスでJavaのuseDelimiter
メソッドを使用Scanner
して、簡単な解析をしようとしています。基本的に、各行は「 | 」で区切られたレコードです。たとえば、次のようになります。
このメソッドは、一致する正規表現をパラメーターとして受け取ります。誰かが一致する正規表現を教えてください|
(両側に 1 つのスペースで区切られた垂直バー)。
ありがとう、本当に感謝します!
java - Java: パターンの文字列をスキャン
これはおそらく速攻です。このコードが何も返さないのはなぜですか?
java - javaスキャナーからファイル内の位置(バイト位置)を取得するには?
Javaスキャナからファイル内の位置(バイト位置)を取得するには?
そして今:ファイル内の結果の位置を取得する方法(バイト単位)?
scanner.match().start() を使用することは、内部バッファー内の位置を提供するため、答えではありません。
java - ファイルからの入力を使用してJavaプログラムを実行する
ファイルから入力を読み取り、それを画面に出力するプログラムを作成しています。ファイルから入力を取得せずに実行すると、完全に正常に機能します。ただし、ファイルから実行しようとするたびに、入力が読み取られると想定されるすべての場所で発生する「スレッド「メイン」java.util.NoSuchElementException:行が見つかりません」エラーが発生します。何が起こっているのかわかりません。
このプログラムは、ユーザーからの入力を受け取り、Photoオブジェクトを作成してから、その情報を画面に出力することを想定しています。情報を手動で入力するとすべて正常に実行されますが、java PhotoTest <test.datを使用してファイルの入力を取得しようとすると、次のエラーメッセージが表示
されます。
スレッド「main」の例外java.util.NoSuchElementException:行が見つかりません
java.util.Scanner.nextLine(Scanner.java:1516)
at PhotoTest.readPhoto(PhotoTest.java:31)
at PhotoTest.main(PhotoTest.java:74)
入力した私のコード:
java - java: テキスト ファイルを読み取り、スキャナー クラスを使用して情報を配列に格納する
次のような学生の成績を含むテキストファイルがあります。
このデータをテキスト ファイルから読み取り、その情報を Scanner Class を使用して配列リストに格納しようとしています。コードを正しく書くために誰かが私を導くことができますか?
コード
ランタイムエラー:
java - Java スキャナーの問題 sc.nextLine();
私の英語については申し訳
ありません:) Javaプログラミングは初めてで、スキャナーに問題があります。Int を読み取り、いくつかのものを表示してから文字列を読み取る必要があるため、sc.nextInt();を使用します。自分のものを表示 showMenu(); 次に、文字列palabra=sc.nextLine();を読み取ろうとします。
sc.nextLine(); を使用する必要があると言われました。sc.nextInt(); の後 しかし、なぜあなたがそれをしなければならないのか分かりません:(
これが私のコードです:
あなたの時間と助けにとても感謝しています:D
java - 間違ったタイプが入力されたときにスキャナーが例外をスローしないようにするにはどうすればよいですか?
サンプルコードは次のとおりです。
int
プログラムを実行してlikeを付けると、4
すべてうまくいきます。
逆に私が答えるtoo many
と、私の面白いジョークに笑ってくれません。代わりに、これを取得します(予想どおり):
int ではないエントリを無視するか、「何人が侵入していますか?」というプロンプトを再表示する方法はありますか? この二つの方法を教えていただきたいです。