問題タブ [datainputstream]
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 - ループ内の「ls /datadata」出力の読み取り
保護されたフォルダーの内容を読み取る必要がある小さなアプリケーションを開発しているため、su を ls および入力ストリームと組み合わせて使用する必要があるという結論に達しました。
ただし、readLine 関数が出力の最後に到達すると、ハングアップします。これは、最後の行に EOL マークが含まれていないためだと思います...
コード:
どうすればこれを回避できますか? 文字を読み取ってから-1を待ってみましたが、上記と同じように機能しませんでした。システムコールなしでこれを行うのが理想的ですが、残念ながらAndroidでは、このフォルダーの内容を一覧表示またはコピーできません...
これを読んでくれてありがとう、Quint
編集:以下の回答のおかげで、問題を解決できました。何をしても、adbシェルを使用するときと同じように「su」タスクを終了してください。受け入れられた回答に記載されている方法を使用するか、必要なことを行った後に手動で「終了」を実行できます。exit を実行すると、不明な理由でエラーストリームに 2 つの空の行が生成されます。
java - テキストファイルからデータを取り除く
テキスト ファイルの日付がどのように見えるかを投稿することから始めます。これはわずか 4 行で、実際のファイルは数百行の長さです。
2011 年 9 月 9 日金曜日
-STV 101--------05:00 - 23:59 SSB 4185 レポート 2011 年 9 月 8 日 2:37 に印刷
0-AH 104--------07:00 - 23:00 AH GYM レポート 2011 年 9 月 8 日 2:37 に印刷
-BG 105--------07:00 - 23:00 SH GREAT HALL レポート 2011 年 9 月 8 日 2:37 に印刷
このテキスト ファイルでやりたいことは、日付のある最初の行を無視し、次の行の「-」を無視して、「STV 101」、「5:00」、および「23:59」を読み込むことです。それらを変数に保存してから、その行の他のすべての文字を無視し、その後の各行についても同様です。
これが私が現在行を完全に読んでいる方法です。そして、ユーザーが scheduleTxt JTextfield にパスを入力したら、この関数を呼び出します。各行を読み取り、印刷できます。
更新:金曜日を一番上の行から取り除き、それを変数にも入れる必要があることがわかりましたありがとう!牛肉。
java - 正規表現を使用してテキストファイルからデータを削除します
テキストファイルのデータがどのように見えるかを投稿することから始めます。これはわずか4行で、実際のファイルの長さは数百行です。
テキストの各小さなセクションは、テキストファイルの1行にあり、何らかの理由で質問形式で表示されない多くのスペースで区切られています。テキストの最初のセクションを、取得しようとしているデータの例として使用します。
これがファイルから取得したいデータです、、、、、Friday
そして行5:00
の読み取り11:59
を無視します。テキストのセクションの2行目のすべての情報も無視されますが、テキストファイル自体では無視されます。すべて1行で。次に、このデータを使用して、各部分を変数に保存します。または、代わりに、データの一部が次のようにフォーマットされることがあります。、、正規表現がこれらのいずれかを検出した場合、前後のその行のすべてのデータを無視できます。STH 1102
HOLD DO NOT BOOK
HOLD DO NOT BOOK
DO NOT BOOK
HOLD - DO NOT BOOK
また、PMが含まれている時間を取得し、24時間形式になるように12を追加したいと思います。
これが私が現在完全に行を読んでいる方法です。そして、ユーザーがscheduleTxt JTextfieldにパスを入力したら、この関数を呼び出すだけです。各行を正常に読み取って印刷できます。
私はこの質問にそこがあることを知っています、うまくいけば、あなたはイムが何を求めているかを理解しているでしょう、何かが不明な場合はただ尋ねてください、ありがとう!牛肉。
更新:このデータの意図を説明するのに役立つかもしれないと思ったのですが、最初にPM時間を24時間形式に変換し、次に4番目のデータに従って(STH 1102
)を使用する挿入関数を呼び出します。行からデータベースに他のデータを挿入するためのODBCドライバー
java - junitを使用して、テキストおよびバイナリファイルからの読み取りとテキストおよびバイナリファイルへの書き込みをテストします
テキストファイルとバイナリファイルから読み取るコンストラクターと、テキストファイルとバイナリファイルに書き込むメソッドを持つCourseクラスを作成しました。このクラスをテストするためのjunitテストを作成するにはどうすればよいですか?
以下のコードを参照してください。
}
java - Java で DataInputStream から読み取られる不明なバッファ サイズ
私は次の声明を持っています:
DataInputStream is = new DataInputStream(process.getInputStream());
この入力ストリームの内容を出力したいのですが、このストリームのサイズがわかりません。このストリームをどのように読み取って印刷すればよいですか?
android - DataInputStreamがreadFullyでスタック
GUIとは別のスレッドプロセスを使用して、データを読み取っているBluetoothSocketがあります。InputStreamをDataInputStreamでラップして、readFully(..)を使用して指定された量のデータを待機できるようにします。このコードを約1時間実行すると、プログラムがロックされ、デバッグ時にreadFully()でスタックします。Bluetoothが切断されたときに通知するようにGUIスレッドBroadcastReceiversに含めました。BroadCastReceiversに通知が届くことはありません。その場合、デバイスがデータの送信を停止する理由がわからないか、Bluetooth SPPがドロップされてもソケットが開いたままであるため、Bluetooth切断メッセージが表示されないかどうかはわかりません。修正に関するアイデア、またはなぜまたはどのようにデバッグするのかについてのアイデアをいただければ幸いです。
これが私のReadBlueToothクラスです...
java - JavaでDataOutputStreamを使用してファイルを送信する
ファイルサイズとコンテンツをサーバーに送信するクライアントを構築しようとしています。
DataOutputStream を使用しようとしています。
ファイルを開いてファイルのサイズを取得し、内容を読み取って送信する必要があると想定しています。
しかし、私はJavaが初めてなので、それらを実装する方法がわかりません...
誰でもこれについて私を助けることができますか?
ありがとうございました!
java - DataInputStreamを使用してファイル情報を受信し、書き込みます
クライアントがDataInputStreamを使用して送信するファイルを受信し、それをファイルに書き込もうとしています。
(クライアントはDataInputStream write(byte []、len、off)メソッドを使用してファイルを送信します)
これが私がやろうとしている方法ですが、完全なデータを受信しません。
上記の実装はエレガントではないかもしれないことを私は知っています。
しかし、私はJavaを初めて使用するので、悪いスタイルについてはご容赦ください。
(あなたが知っているなら、あなたがより良いものを推薦するならば、私は本当に感謝します)
結果ファイルはわずか4KBですが、401KBである必要があります
コードを機能させるには、このコードをどのように修正する必要がありますか?
どうもありがとうございます。
java - datainputstreamとbufferedinputstreamを使用してファイルを受信しているときに無限ループに陥った
DataInputStreamとBufferedInputStreamを使用してクライアントからファイルを受信するサーバープログラムを構築しようとしています。
これが私のコードで、無限ループに陥ります。これは、available()を使用していないためだと思いますが、よくわかりません。
なぜそれが無限ループに陥るのか誰か教えてもらえますか?利用できないための場合、使い方を教えてください。私は実際にグーグルで検索しましたが、使い方に戸惑いました。どうもありがとうございます
java - Javaネットワークプログラミング、サーバーを作成しようとしましたが、機能していません
ファイルを受け入れ、DataInputStreamとBufferedInputStreamを使用して特定のディレクトリに書き込むサーバーを作成しようとしています。
サーバーは'ユーザー名(文字列)''ファイル数(int)''ファイル名(文字列)''各ファイルのサイズ(long)'および'解釈されないファイルの内容bytes(byte [])'を取得します
そして、すべてが成功した場合、私はブール値を送信することになっています。
しかし、問題は、ファイルを正しく受信していないことです。
時々、「壊れたパイプ」エラーメッセージが表示されたり、受信後にファイルが破損したりします。
コードを4時間調べましたが、問題は見つかりませんでした。
これについて教えていただけませんか?クライアントは正常に動作していると想定できます。