問題タブ [qiodevice]
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.
qt - QTBUG-26538 の回避策
qt 5.2.1をバンドルするubuntu 14.04で実行する必要があるアプリケーションを開発しています。
QIODevice として QUdpSocket を使用するため、まずサーバーがデータグラムを受け入れるポートにバインドしてから、connectToHost() を呼び出します。
残念ながら、[QTBUG-26538] QUdpSocket: connectToHost()
が bind() によって指定されたローカル ポート番号をリセットするという問題に直面する必要があります。
c++ - 2 チャンネルでカスタム QIODevice を作成する
カスタム QIODevice を実装しようとしています。
2 つの tcp ソケットを使用する検出器があります。1 つはコマンドの送信と応答の受信用で、もう 1 つはデータの読み取り専用です。
どうすればいいですか?クラスを作成し、QIODevice から派生させ、純粋な仮想メソッドを実装しようとしましたが、いくつかの問題に直面しました。
次のコードがあります。
基本的に私の質問は、これらのチャネルをどのように処理するかです。たとえば、qt documentation
これがあるからです
bool QIODevice::open(OpenMode mode)
デバイスを開き、その OpenMode を mode に設定します。成功した場合は true を返します。それ以外の場合は false を返します。この関数は、デバイスを開く open() またはその他の関数の再実装から呼び出す必要があります。
したがって、オーバーライドされたメソッドから呼び出す必要がありますOpen()
が、このメソッドの実装を調べたところ、チャネル数が 1 に設定されていることがわかりました。この数を変更するにはどうすればよいですか?
QIODevice から継承しているバッファは何のためにありますか?どのように使用すればよいですか?
カスタム QIODevice を作成するポイントがありませんか? もしそうなら、私にそれを説明してください。
c++ - QIODevice::writeData の実装、紛らわしいドキュメント
リアルタイム オーディオ アプリケーション用にダブル バッファを実装しようとしていQAudioInput
ますQIODevice
。このメソッドのドキュメントはかなり混乱しています。
まず第一に、ドキュメントのメソッド シグネチャは QT 5.9.2 のヘッダーと一致しませんvirtual qint64 writeData(const char *data, qint64 len) = 0;
。
ただし、ドキュメントには次の署名があります。qint64 QIODevice::writeData(const char *data, qint64 maxSize)
maxSize
パラメータは、データの一部をバッファリングできることを意味するため、混乱します。これは、ドキュメントでも次のように示されています。
maxSize
データからデバイスにバイトまで書き込みます。書き込まれたバイト数を返す-1
か、エラーが発生したかどうかを返します。
ただし、直後にドキュメントに次のように記載されていますが、これは私には矛盾しているようです。
この関数を再実装するときは、この関数が返す前に利用可能なすべてのデータを書き込むことが重要です。
QDataStream
これは、 がクラスを操作できるようにするために必要です。QDataStream
すべての情報が書き込まれたと想定するため、問題があった場合に書き込みを再試行しません。
私のQIODevice
実装は、1 回の呼び出しですべてのデータをバッファリングする責任がありますか?
python - QIODevice.read() から読み取った後にデータを処理する方法は?
質問するのはこれが初めてです。何か間違っていることがあれば教えてください。よろしくお願いします。
カスタム URL に QWebEngineUrlSchemeHandler を使用しており、QFile を使用してテスト用の JavaScript ファイルを開きたいと考えています。
まず、私がちょうど使用する場合
ウィンドウは JavaScript を開くことができますが、カスタム QFile を使用すると、QIODevice.read() から読み取った後にデータを処理する方法がわかりません。
QIODevice.read() からデータを読み取った後、ウィンドウで javascript を開くために必要なことを知りたいです。
いくつか提案してください、ありがとう。
これが私の完全なコードです。