問題タブ [dataoutputstream]

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

java - Javaでintを送信します。いつか例外を引き起こしますか?

あるJavaプログラムから別のJavaプログラムにintを送信します(同じコンピューター上でその分)。ただし、例外が発生し、接続されない場合があります。

スレッド「main」の例外java.net.ConnectException:接続が拒否されました:java.net.PlainSocketImpl.socketConnect(ネイティブメソッド)のjava.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)のjava.net.PlainSocketImplで接続します。 connectToAddress(PlainSocketImpl.java:195)at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)at java.net.Socket.connect(Socket.java :529)at java.net.Socket.connect(Socket.java:478)at java.net.Socket。(Socket.java:375)at java.net.Socket。(Socket.java:189)at Client.main (Client.java:6)

送信するためのコードは次のとおりです。

そして受け取るために:

うまくいくこともあればうまくいかないこともあるので、それは奇妙なことです。誰かがその理由について何か考えを持っていますか?

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

android - Android DataOutputStream Flush メソッドが実際にフラッシュしていないようです

ここに私がやっているいくつかの簡単なコードがあります。(読みやすくするために一部を削除しました。) 基本的に、ファイルを開き、一度に 3k のチャンクを処理しています。これらは Base64 (現在は 4k チャンク) にエンコードされ、HTTP ポスト経由でアップロードされます。DataOutputStream.writeBytes() を呼び出すたびに、DataOutputStream.flush() も呼び出し、送信された量に基づいて進行状況バーを更新します。

これで、アプリケーションを実行すると、毎回画像が正常にアップロードされます。ただし、モバイル接続インジケーター (上/下矢印) を見ると、プログレス バーが移動している間は点灯しません。3MB の画像の場合、バーは 10 秒ほどで 0 から 100% に変化します (私の 3G 電話では速すぎます)。次に 100% で、このループが完了した後、dataStream.close() メソッドが呼び出されます。これは、データ送信が開始されるときです (矢印で示されているように)。これは、終了する前に数分間座っています。

flush() を正しく理解していませんか? データの送信を強制するべきではありませんか?

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

java - DataOutputStream への書き込みによる Bluetooth 経由でのデバイスへのコマンドの送信

Bluetooth RFCOMM ソケット接続を介してデバイスにコマンドを送信しようとしています。・接続成功。-接続されるとすぐに、DataInputStream を読み取ろうとし、デバイスから継続的にデータを取得しました。- 私の問題は、デバイスにシリアル コマンドを送信しようとしているのですが、デバイスがコマンドに応答しないことです。

コマンドの送信方法に何か問題がありますか? これが私が使用したコードです...

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

android - AndroidでDataOutputStreamを書く

当面の間、DataOutputStream を使用して int のみをサーバーに送信するようにソケット クライアントをセットアップしようとしています。PC からアプリを実行すると正常に動作しますが、Eclipse の Android エミュレーターで次のエラー メッセージが表示されます。「アプリケーション SOCKET が予期せず停止しました。もう一度お試しください」任意のヒント?これが一般的に機能しない他の間違いを見つけた場合は、アドバイスをいただければ幸いです。

Android 用アプリのコード:

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

java - Java 入出力

int i をファイルに出力するための次の 2 つのコード フラグメントの出力の違いを説明してください。

私)

ii)

プリンターライターは文字列を受け取り、それをユニコード文字のストリームに変換すると思いますが、データ出力ストリームはデータ項目を一連のバイトに変換します。

さらに何を追加しますか?

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

java - クライアント/サーバーアプリケーションファイル転送

私は現在、次のようなクライアントサーバーアプリケーションを設計しようとしています。ユーザーはサーバーに接続し、認証がOKになると、サーバーはユーザーにいくつかのファイルを送信します。問題は、それらのファイルが(私の方法では)単一のファイルに書き込まれることです。

ここにいくつかのコードがあります:

ファイルを転送する機能

そして、どのファイルを送信する必要があるかを選択する関数

os私はDataOutputStreamそれcomunicareSocketタイプであることに言及しなければなりません。

writeBytes問題は、と組み合わせるということだと思いますwrite。誰かがこの問題で私を助けることができますか?サーバーとクライアントにファイルとメッセージの両方を受信させるにはどうすればよいですか?

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

java - ソケットプログラミングを使用して Java から C にデータを送信する

WinSock2 を使用して Java クライアントから C サーバーに文字列を送信するプログラムを作成しています。DataOutputStream を使用して、ソケットを介してデータを送信しています。

Cサーバーは受信したバイトを確認しますが、データにアクセスしようとすると何も表示されません。

サーバ

クライアント

出力

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

java - バイト配列と DataOutputStream を使用した書き込みと読み取りの一貫性のない結果

短いバージョン: DataOutputStream を使用して、ランダムなバイトで満たされた 8 バイトのバイト配列をディスクに書き込み、別のメソッドで DataInputStream を使用してそれを読み取ります。データは同じではないようです。どこから問題を探し始めるべきですか?

長いバージョン: javax.crypto ライブラリを使用してパスワード ベースの暗号化を行うコードがあります。乱数ジェネレーターを使用して 8 バイトのランダム ソルトを生成し、反復カウント 1000 を使用してキーを生成します。

ファイルを書き込むと、次の形式になります。

キーを再構築するためのパラメーターを回復するためにファイルの先頭を読み取ると、バイト配列は書き込まれたものと同じではないようです。ただし、反復回数は正常に回復されます。

コード全体は次のとおりです。

http://hg.kurt.im/479hw3/src/0c3c11f68f26/src/csc479_hw3/PBE.java

以下に関連する部分を示します。

暗号コードを有効にすると、半分復号化されたファイルが得られます。それがないと、一貫性のない書き込みと読み取りしか得られません。

0 投票する
6 に答える
19450 参照

java - バイト順序を逆にする/エンディアンを変更するコマンドライン

Javaで記述されたデータを解析しようとしているスクリプトをハッキングしていますDataOutputStream#writeLong(...)。javaは常にビッグエンディアンを書き込むように見えるので、バイトをにフィードするのに問題がありますod。これはod、エンディアンが現在使用しているアーチのエンディアンと一致していることを常に想定しているためです。私は小さなエンディアンマシンを使用しています。

バイトオーダーを逆にする簡単なワンライナーを探しています。ファイルの最後の8バイトが前述のwriteLong(...)方法で長い書き込みであることがわかっているとします。これだけ長く印刷する私の現在の最善の試みは

、しかしtacテキストでのみ機能するようです(十分に公平です)。への参照をいくつか見つけましdd conv=swabたが、これはペアでバイトを交換するだけであり、これらの8バイトを元に戻すことはできません。

誰かがこれのための良いワンライナーを知っていますか?

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

java - PHPページでJavaDataOutputStreamから出力を受信します

サーバーにファイルを送り返すために使用しているJavaアプレットがあります。サーバー側では、これをphpページで受信します。

以下は、送信を行っているJavaコードです。php側では、グローバル配列をチェックし、データはURLで渡されていますが、ファイルデータは渡されていません。私は本当にこれを検索して引っかいたので、助けていただければ幸いです。


解決済み-よくあることですが、数日間の戦いの後に質問を投稿し、ほんの数分後に解決策が提示されます。

以前にXMLデータを転送するためにcURLを使用したことを思い出したSOAPの使用についてのコメントの後で考えました。数回検索した後、私ははるかに単純で非常にエレガントな解決策に出くわしました。

http://www.lornajane.net/posts/2008/Accessing-Incoming-PUT-Data-from-PHP

基本的に、以下を使用してphpのPUTデータにアクセスできます。

だから今それは素晴らしく動作します