問題タブ [qfile]
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++ - QFile を使用したファイルへの書き込みは、既に Excel で開かれている場合、エラー コードなしで失敗します。
QFile を使用して既存のファイルに書き込もうとしましたが、期待どおりに動作します。ただし、問題は、ファイルが Excel で開かれている場合、プログラムからのファイルへの書き込みに失敗することです。
QFileInfo を使用してアクセス許可をテストし、ファイルに対するすべての読み取りおよび書き込みアクセス許可を取得しようとしました。テスト
true を返します。
notepad++でファイルを開いた場合は同様の問題は発生しません。
ファイルがロックされていて書き込めないかどうかを確認するにはどうすればよいですか?
c++ - txt ファイルを QStringList に読み込む
3000 文字列 (1 文字列 - 数単語) のファイルがあります。文字列をに読み込む必要がありますQList
。どうやってやるの?私は次のことを試しました:
関数() <=>MyList<<"string"<<"string2";
c++ - QFile / QTextStream は、書き込み中の削除ファイルでエラーを表示しません
QTextStream を使用して QFile に書き込んでいますが、すべてうまくいきます。エラー検出を作成しようとしているので、書き込みの合間に出力ファイルを削除してみました。
Strangle、Qtextstream のステータスは引き続き 0 (エラーなし) を示し、QFile のエラー メソッドは 0 を返します。それでもファイルはなくなり、書き込まれたテキストは失われています...なくなっています
どうしたの?書き込みの失敗を検出するにはどうすればよいですか? 私は間違った方法を見ていますか?
c++ - ロガークラスの QFile と QTextStream
QFile と QTextStream を使用して Logger クラスを作成しようとしていますが、効率的な方法が見つかりません。その中に log(...) 関数を作成したいだけです。
次のようにするとうまくいくことがわかっています。
しかし、それはかなり厄介です。挿入するログ行ごとに QFile オブジェクトを作成したくありません。
そのため、次のようないくつかの異なる方法を試しました。
1) (メンバーとして QFile *m_pFile を使用)
また
2) (メンバーとして QFile *m_pFile および QTextStream *m_pLogStream を使用)
最初のケースでは、次のようになります。
C2248: 'QTextStream::QTextStream': クラス 'QTextStream' で宣言されたプライベート メンバーにアクセスできません
2 つ目では、*m_pLogStream は QTextStream& と同等ではありません。
私は何を間違っていますか?
qt - QFiles エラーの Qt C++ ベクトル
私は次のものを持っています:
次のエラーが表示されます
error: 'QFile::QFile(const QFile&)' is private
。
std::vector の代わりに QList を使用すると、同じエラーが発生します。
ご清聴ありがとうございました。
qt - QFile Unicode パス - ファイルが存在しません
外部プログラムを呼び出して作業を完了する Firefox プラグインを作成します :)。問題は、引数を渡すときに Firefox が Unicode を処理できないことです。
私が行ってきたことは、代わりに URI でエンコードされた文字列を使用することであり、QT ライブラリを使用して Unicode 文字列を処理するという難しい作業を行っています。しかし、QT の QFile で Unicode パス上の何かを見つけることができません。
次のような文字列から始めます。
C:\temp\私\Power Up!.mp3
私はこれにエンコードします:
C%3A%5Ctemp%5C%E7%A7%81%5CPower%20Up!.mp3
次に、コマンド ライン引数として渡します。現在、Visual C++ 2010 Express Edition コンパイラのデバッグ コマンド ライン引数でそれを渡しています。
最後に、私はこれをやろうとします:
「私」文字を含むパスがない場合は問題なく動作しますが、それ以外の場合は exists() の呼び出しが false を返し、終了してしまいます。私はファイルがそこにあることを知っています.notepad ++でデバッグファイルをチェックすると、正しい文字が含まれています.
誰かが私が間違っていることを見ることができますか?
編集:
多分取れたと思います。
まず、次のように wmain に切り替えました。
次に、QStrings を次のように設定します。
これはこれまでのところ機能します。さらにテストを行う必要があります:)、これがLinux / OSXでコンパイルされないことは90%確信しています(LinuxでQTをビルドして見つけ、wchar_tマクロを調べる必要があります)。
c++ - QFile: k から k+L までのバイトだけを効率的に読み取る方法
最初のファイル全体を QByteArray に読み込む QFile から k から k+L までのバイトを読み取ることができます
k から k+L までのバイトだけを効率的に読み取る方法は?
c++ - QDir::rmdir が静的でないのはなぜですか?
QFile
静的機能があります
bool QFile::remove ( const QString & fileName ) [static]
指定したファイルを削除します。これは便利です。ファイルへのパスがあり、コマンドを使用してそれを削除します。ただし、QDir
そのようなコマンドはなく、次のコマンドのみがあります。
bool QDir::rmdir ( const QString & dirName ) const
これは静的ではないため、オブジェクトを要求します。だから私は醜いことをすることを余儀なくされています
QDir().rmdir(path)
これは嫌です。何か不足していますか?