問題タブ [java-io]

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

java - Java:ファイルをロックせずに開いて読み取る

Javaで「tail-f」を模倣できる必要があります。別のプロセスによって書き込まれているログファイルを読み取ろうとしていますが、ファイルを開いて読み取ると、ファイルがロックされ、他のプロセスはそれを書き込めなくなります。どんな助けでも大歓迎です!

現在使用しているコードは次のとおりです。

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

java - javaで開始インデックスと終了インデックスの間の行を読む

ファイルに10行あるとしましょう。インデックスの開始と終了を指定する 2 つのパラメーターがあります。

StartIndex = 2 // 最初の 2 行を指定します

EndIndex = 3 // 最後の 3 行を指定します

間の行を読む必要があります。インデックスを維持し、スキップすることが方法の1つであることは知っています...しかし、他に効率的な方法はありますか(外部ライブラリを使用しても)?

ありがとう

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

java - JavaバイナリファイルwriteUTF...仕様を説明する

私は自分でJavaを勉強しています。演習の1つは次のとおりですが、私はそれが何を求めているのか本当に理解していません....これをより詳細で簡単な言葉で説明できるスマートなJavaの達人はいますか?ありがとう

タイプがintまたはdoubleの数値を含むバイナリファイルがあるとします。ファイル内の番号の順序はわかりませんが、ファイルの先頭に文字列で記録されています。文字列は、後続の数字のタイプ順に、intを表すiとdoubleを表すdの文字で構成されます。文字列は、メソッドwriteUTFを使用して書き込まれます。

たとえば、文字列 "iddiiddd"は、ファイルに次のように8つの値が含まれていることを示しています。1つの整数、2つの倍精度浮動小数点数、2つの整数値、3つの倍精度整数。

このバイナリファイルを読み取り、1行に1行に書き込まれた値の新しいテキストファイルを作成します。

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

java - フォルダが存在するかどうかを確認する

ファイルまたはディレクトリがJavaで作成されたかどうかを判断するにはどうすればよいですか?

データディレクトリがまだ存在しない場合は、基本的にデータディレクトリを作成したいと思います。

ありがとう。

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

java - に類似したJavaライブラリ/パッケージはありますか?

私は約 14 年間 Java のオンとオフを行ってきましたが、過去 6 年間はほとんど何もしていませんでした。

私は本当に java.io パッケージが嫌いです -- サブクラスとアダプタの軍団です。私常に「errno」などをポーリングするよりも例外が好きですが、宣言された例外がなくても確実に生活できます。

C の Unix/ANSI stdio.h ルーチンのように機能するものはありますか?

Java 自体が廃止されるまで、java.io とその規則を取り除くことは決してないことを私は知っています。そうは言っても、次のように機能するものが欲しいです(パッケージjavax.stdioと呼びましょう):

fopen() および popen() を模倣するコンストラクターを使用して、テキストまたはバイナリーのファイル (またはパイプ) をシーケンシャルまたはランダムに読み書きできるメインのユーティリティ クラス (おそらく FileStar) を用意します。

このクラスには、fread()、fwrite()、fgets()、fputs()、fseek() など (fprintf()?) などを実行する便利なメソッドが多数含まれている必要があります。オープン/コンストラクト モードと互換性のないメソッドは、単純にスローされます (制限されているときに一部のコレクション クラス/メソッドが行うのと同じように)。

次に、作成したストリームをどのように使用するかを示す一連のインターフェイスを用意します: Sequential、RandomAccess、ReadOnly、WriteOnly、Text、Binary、およびこれらの適切な組み合わせ。おそらく、適切な型キャスト (インターフェース) を返すメソッドがあり、互換性のないものを要求した場合はスローされます。

追加のフレーバーについては、宣言された例外をスキップします。たとえば、javax.stdio.IOException extends RuntimeException です。

このようなオープンソース プロジェクトはありますか?

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

java - SCJP Book、IO セクション: これはタイプミスですか、それともこのようになるのには理由がありますか?

私の質問は、FileWriter fw をパラメーターとして取るコンストラクターで新しい PrintWriter が作成される行 (編集: 19) に関するものです。実際の書き込みで後で使用されない場合、BufferedWriter bw を FileWriter にチェーンする使用法がわかりません。Java は、bw が何らかの形でプログラムの残りの部分に影響を与える方法で連鎖を適用できますか?

おそらくタイプミスで、PrintWriter out のパラメーターとして bw を使用するつもりだったと思いますが、タイトルが示すように、私はこれが初めてです。

事前にすべてに感謝します。

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

java - 1MB のファイルを連続して編集する場合、どちらがより効率的ですか?

ファイルシステムをシミュレートして、1MBのファイルを継続的に編集する必要があります。ファイル制御ブロック、FAT、ブロックなどのディレクトリを変更する必要があります。

Proffesor は、更新が行われるたびにファイルを上書きすることを推奨しました。1MB はそれを行うのに数分もかからないはずですが、私はこの方法が好きではありません。

ここに行く方法はFileChannelですか?また、MappedByteBufferを編集すると、マップされたファイル領域の内容もすぐに編集されることを理解していますか? つまり、再帰的にマッピングされていますか?

ありがとう。

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

java - Java で隠しファイルを変更する

ユーザーがダウンロードするファイルがあり、Java 内でコマンドを実行してファイルを非表示にします。

後でその隠しファイルにアクセスする必要がありますが、取得しています

これは、ファイルが非表示になっていない場合に機能しますが、ファイルを非表示にする必要があるため、ユーザーはファイルを変更できません。では、隠しファイルをどのように変更すればよいのでしょうか? Javaでこれを行う方法はありますか?

アイデアをありがとう。

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

java - ObjectInputStream は FilterInputStream を拡張すべきではありませんか?

ブロックの引用は Java Docs からのものです -

FilterInputStream には、データの基本的なソースとして使用する他の入力ストリームが含まれており、途中でデータを変換したり、追加機能を提供したりする可能性があります。

DataInputStream を使用すると、アプリケーションは、基礎となる入力ストリームからプリミティブな Java データ型をマシンに依存しない方法で読み取ることができます。

したがってDataInputStreamFilterInputStream

ObjectInputStream は、ObjectOutputStream を使用して以前に書き込まれたプリミティブ データとオブジェクトを逆シリアル化します。

ただし、何らかの理由で、基になる入力ストリームからオブジェクト (今回はプリミティブ型ではない) も読み取っていますが、ObjectInputStream拡張されません。FilterInputStream関連するクラスの分岐は次のとおりです。

代替テキスト

同じことの設計上の理由はありますか?

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

java - Java の Windows 一時ファイル

FILE_ATTRIBUTE_TEMPORARY属性を持ち、 FILE_FLAG_DELETE_ON_CLOSEJava を使用して設定されるファイルを Windows で作成する方法は?

ファイルをメモリ内ファイルにしたいのですが。

正確には、アプリケーションのクラッシュなどの場合に一部のデータがディスクに残っている状況を避けたいため、終了時の削除メカニズムは私を満足させません。