問題タブ [bufferedstream]
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.
c# - C# で System.IO.BufferedStream に代わるものはありますか?
次の例外が発生します。
次のリンクは、これがマイクロソフトの既知の問題であることを示しています。 http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=273186
このスタックトレースは、次の 2 つのことを示しています。
- System.IO.BufferedStream は、ばかげたポインタ移動操作を行います。BufferedStream は、基礎となるストリームをバッファする必要があります。このようなシーク操作があるとバッファの品質が悪くなります。
- Seek をサポートしていないストリームでは安定して動作しません。
代替手段はありますか?C# で NetworkStream と一緒にバッファーが必要ですか、それとも既にバッファーされていますか。
編集: 基になるソケット ストリームへの読み取り/書き込み呼び出しの数を単純に減らしたい。
c# - C# - StreamReader.ReadLine が正しく動作しない!
BufferedStreamReader
単純に、Java で行うことを実装しようとしてきました。ソケット ストリームを開いていますが、それを行単位で読み取りたいだけです。
次のサーバーコードがあります。
そして、次のクライアントコード:
サーバーは最初の行 ( login>user,pass
)のみを読み取り、 ReadLine
null を返します。
Java のような行指向のリーダーを実現する最も簡単な方法は何BufferedStreamReader
ですか? :s
c++ - C++では、システムはバッファリングされたストリームをどのように実装しますか?
誰かがこの概念を説明するサンプル コードを書くことができますか? バッファリングされたストリームが何に使用されるかは知っていますが、それを実装する方法も知りたいです。
前もって感謝します!
java - ストリームが空になった後、PushBackBufferedInputStream で unread() を使用するにはどうすればよいですか?
Java で語彙アナライザーを作成し、PushbackInputStream を使用しています。これは、私が望んでいたものではない場合に備えて、読んだものをプッシュバックできるようにする必要があるためです。しかし、ストリームが空で read() が -1 を返すときはいつでも。unread() を使用することはできません。
編集:私は現在、通常の InputStream を使用しており、一度にすべてを読み取り、スタックに入れ、スタックをストリームとして使用して、アイテムを pop() および push() できるようにしています。
c# - Request.Files、StreamReader、BinaryReader、または BufferedStream からアップロードされたファイルを読み取る最良の方法は何ですか?
ユーザーが複数のファイルをアップロードできるフォームがあります。私は MVC 2.0 を使用しており、コントローラーで、一般的なインポート インターフェイスである Web サービスを呼び出す必要があり、ファイルを byte[] として渡す必要があります。
.NET は Request.Files を HttpFileCollectionBase として公開し、Stream メンバーへのアクセスを提供する HttpPostedFile または HttpPostedFileBase を使用してファイルハンドルにアクセスします。
ストリームからバイトを読み取る最良の方法は何ですか?
バイナリリーダー? ストリームリーダー? バッファストリーム?
c# - BufferedStream.Writeが「このストリームはシーク操作をサポートしていません」とスローするのはなぜですか?
これは私を困惑させます。呼び出していないのにシークについてエラーが発生しますか?
私は次のようなコードを持っています:
そして私はこの例外を受け取ります:
ストリームはタイプSystem.IO.BufferedStream
です。何が起こっている可能性がありますか?
詳細情報で編集:
sizeof(uint)==msg.length
この場合。
ストリームは次のように宣言されますstream = new BufferedStream(new NetworkStream(socket), 1024)
編集:
それでした!1つので読み取りと書き込みを行うことができますがNetworkStream
、に切り替えるときBufferedStream
は、読み取りと書き込み用に別のを用意する必要があります。どうやらNetworkStream
、同じソケットでコンストラクターを2回呼び出すだけで、それを取得できるようです。
可能であれば、ジャスティンとハンスの両方の回答を受け入れます。一方が私に何が悪かったのかを正確に理解させ、もう一方が私を解決策に導いたからです。みんな、ありがとう!
java - Javaで特定の単語の後に特定の値を見つける方法は?
からテキストをBufferedReader
取得しましたが、特定の文字列で特定の値を取得する必要があります。
これはテキストです:
default=と;の間の正確な数を取得する必要があり ます。
これは「213」です
c# - BufferedStream からのディスク アクセス数の取得
を使用してバイナリファイルを読み取っていますBinaryReader
。で入力をバッファリングしたときのディスクアクセス数をカウントしたいBufferedStream
。残念ながら、このクラスは封印されているため、メソッドをオーバーライドして手動でカウントすることはできません。
標準ライブラリを使用してそれを行う方法はありますか? または、これを実現するには、独自のバッファリング BinaryReader を作成する必要がありますか?
c# - TcpClient を切断せずに BufferedStream を閉じますか?
TcpClient と BufferedStream 経由で画像を送信しようとしています。問題は、TcpClient を切断しないとデータを送信できないことです。
データを送る:
データを受け取る:
どこ :
とBufferedStream bufferedoutput = new BufferedStream(serverStream);
bufferedoutput.Close();
問題は、サーバーが受信したデータを取得するためにクライアント側でキャストする必要があることですが、これによりクライアントが切断されます。これが問題です。助言がありますか?
c# - c# 他のインスタンスから競合のあるテキスト ファイルを読み取る
以下を使用してテキストファイルからデータを読み取るアプリがあります。
しかし、私はこのアプリの 16 個のインスタンスを 24 コアのマシンで並行して実行しています。これを行うと、単一のインスタンスを単独で実行するのにかかる時間よりも、合計時間が大幅に長くなります (それらが並行して実行されている場合でも)。これはディスクの競合が原因だと思いますか?
bufferedstream を使用するための提案を見ましたが、それが上記のコードとどう違うのかわかりません。確かに私が持っているようにバッファサイズを指定することによって-私はすでに「バッファリングされた」ストリームを使用していますか?
私のコードでは、バッファーのさまざまなサイズを試しましたが、大きな違いはないようです。
bufferedstream が私がしていることとどのように異なるかを誰かが説明できれば、それは非常に役に立ちます
大きなバッファを設定すると
最初の readLine でバッファ全体を強制的に埋めることはできますか? つまり、バッファがファイルサイズよりも大きい場合、ファイル全体をメモリに読み込むことができます/読み込む必要があります。オペレーティングシステムはそれだけのバッファを許可することで機能しているように思えますが、必ずしもそれを使用しているわけではありません.