問題タブ [qjson]
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++ - QJson ライブラリの使用
私はそれがばかげた質問であることを知っていますが、それでも.
プロジェクトでQJsonライブラリを使用したいと考えています。公式サイトから tarball をダウンロードしました (おそらく、64 ビットの Ubuntu 12.04 を使用していることに言及する必要があります)。INSTALLファイルには次の指示があります。
私は正確に従った。QJson/include
の/lib
とshare
フォルダが . に追加されました/usr/local
。
その後、IDE (QtCreator) を開き、次の簡単なコードでテスト プロジェクトを作成します。
正常に処理され、すべての#include
型が認識され、QJson クラスのオートコンプリートが正常に機能します。ただし、コンパイルしようとすると、次のようになります (読みやすくするために完全なパスは削除されています)。
その理由は何ですか?どうすれば機能しますか?
json - QString オブジェクトを Parser::parse() に渡すときにエラーが発生する
Qfile を使用して JSON ファイルを読み込んでいます。オブジェクトに格納しQstring
ます。QStrin
g オブジェクトを に渡す際にParser::parse()
、コンパイル エラーが The function parse()
only accept QIODevice*
or const QByteArray&
as first argument として表示されます。
正確なエラー メッセージは次のとおりです。
と にキャストしようとしましQString
たQIODevice
がQByteArray
、すべて無駄でした。
qt - Qt symbain アプリで qjson を使用する
Qt を使用して Symbian アプリを開発しています。
リンクからqjsonをダウンロードしました。そのリンクの指示に従いました。はい、qjson.sis ファイルがあります。今、私は自分のアプリでそれを使用する必要があります。試してみると、このエラーが発生しました。
起動に失敗しました: コマンド応答 [コマンド エラー]、要求する 1 つの値: 'C|101|Processes|start|""|"MyProject.exe"|[""]|[]|true' {"コード" :-46,Format="プロセスの作成に失敗しました (実行可能ファイルと必要なすべての DLL が転送されたことを確認してください) (許可が拒否されました)"} エラー: 'プロセスの作成に失敗しました (実行可能ファイルと必要なすべての DLL が転送されたことを確認してください)転送されました) (許可が拒否されました)' コード: -46
起動アイコンを押すと、「セキュリティ上の理由によりファイルを実行できません」と表示されます。
次に、モバイルにqjson.sisをインストールしてから、アプリをインストールしようとすると、このエラーが発生しました。
:-1: エラー: インストールに失敗しました: '別のパッケージが所有するファイルを上書きできませんでした: c:\sys\bin\qjson.dll in ' コード: 131073; エラー コードの説明については、http://wiki.forum.nokia.com/index.php/Symbian_OS_Error_Codesを参照してください。
私の .pro ファイルにはこれがあります。
何か案は...?
xml - XMLのYoutubeデータAPI
私はデータAPIを使用しています。特定の動画からデータを取得したい。これはPHPのJSONで機能します。しかし、Qtでそれを行う必要があります。そのため、以前にXMLを実行したことがあり、Qt自体でXMLを使用しているため、XMLの方が簡単です。一方、QJsonはサードパーティの「プラグイン」です。
では、JSONではなくXMLでデータを取得する方法があるのだろうか?
PHPでJSONをXMLに変換することを考えていなかった場合は、Qtでそのリンクをリクエストしてください。
(XMLで取得したいjsonデータ)
qt - プロジェクトに DLL を追加した後の「プロセスの作成に失敗しました」
[参考までに: 私は答えを得て、解決策を書いているところです。この投稿は、同様の問題を抱えている他のユーザーの参照用です]
Symbian-Belle プラットフォームでいくつかの小さなアプリケーションに取り組んでいます。いくつかの JSON ファイルを解析しなければならない場所に到達するまで、すべてがうまくいっていました。非常に関連性が高く使いやすいように思われるQJsonライブラリを見つけました(ただし、すべてをQVariantMapとして返すようですが、これはおそらくそれほど軽量ではありません..)。
ただし、このライブラリはプリコンパイルされた形式では提供されません。ソースのみです。幸いなことに、QtCreator の Symbian プロジェクトでコンパイルする準備ができています。
いくつかの初期設定とマイナーな修正の後、すべてがシミュレーターでスムーズに実行されたので、次のステップは実際のデバイスで実行することでした。ここでいくつかの問題が始まりました。ビルド、リンク、デプロイ、およびインストールの後、IDE から次のように通知されました。
起動に失敗しました: コマンド応答 [コマンド エラー]、要求する 1 つの値: 'C|4|Processes|start|""|"MyApp.exe"|[""]|[]|true'
#0 {" Code":-46,Format="Failed to create the process (verify that the executable and all required DLLs has been transfered and that the process is not running)"}
エラー: 'Failed to create the process (実行可能ファイルと必要なすべての DLL が転送され、プロセスがまだ実行されていないことを確認してください) (許可が拒否されました) ' コード: -46
起動プロセスは即座に中止されました。もちろん、json 関連のコードとライブラリがまだプロジェクトに追加されていないときは、アプリケーションは適切に起動していました。
提案された内容を確認したところ、QJson ライブラリは実際にデバイスに適切にインストールされていたので、ファイルが見つからないということではありませんでした。また、アプリケーション自体も適切にインストールされています。手動で実行することもできました。それを行うと、エラーが発生しました:
セキュリティ上の理由でファイルを実行できません
何が起こっている?修正方法は?
qt - UbuntuのQt CreatorでQJsonライブラリを使用する
Qt Creator で作成されているアプリケーションで QJson ライブラリを使用しようとしています。動作システムは Ubuntu 12.04 32 ビットです。
synaptic を使用して libqjson0 (0.7.1-6) をインストールしました。ライブラリがインストールされました
プロジェクトを右クリックし、[ライブラリの追加] を選択して、ライブラリを Qt Creator に追加しようとしました。上記の 2 つのパスのいずれかを入力すると、ファイル名が赤くなり、正しくないことが示されました。libqjson.so.0.7.1にリンクするシンボリック リンク libqjson.so を作成しました。/usr/lib/i386-linux-gnu/libqjson.so パスを使用してライブラリを追加できました。
初心者の質問: アプリの上部に #include <parser.h> を追加しました。「parser.h: No such file or directory.」というエラーが表示されます。/usr/libs/i386-linux-gnu で parser.h を検索しましたが、結果は返されませんでした。parser.h の前に何か/ を追加する必要がありますか、それとも他に何か不足していますか?
編集: 以下に添付された.proファイル
c++ - QJson QVariantMap から QByteArray へ
QJson を使用して、json 形式で返されたデータを解析しています。返される項目の 1 つは、80 文字のバイト配列です。QJson からの戻り値は QVariantMap であり、Qt Creator デバッガーで表示すると長整数の配列のように見えます。
Map を反復処理し、各 QVariant をバイトにキャストしてバイト配列に割り当てるよりも、QVariantMap をバイト配列に変換するより良い方法はありますか?
(上記のコードは説明のためのものであり、整数をバイトにキャストする適切な構文が何であるかはわかりません。上記のコードは、「型 'QVariant' から型 'char' への無効なキャスト」という結果になります)
c++ - 返されたオブジェクトの配列を処理するQjson
Qjson を使用して、Web サービスから返された json オブジェクトを解析しています。複雑なオブジェクトの配列を処理することに行き詰まっています。
最初のレベルでは、Web サービスは "error"、"id"、および "return" で構成されるマップを返します。エラーがない場合は、次を使用して最初のレベルの値を取得できます
を使用して、第 2 レベルの日付項目値を取得することもできます
29 個のキーと値のペアで構成される「Elements」というオブジェクトがあります。Web サービスはこれらの「要素」の配列を返していますが、それを解析する正しい方法を見つけることができません。ヘッダー ファイルでは、要素のコンテナーは次のように定義されます。
この線
コンパイラがエラー「エラー: 'operator=' が '((MyClass*)this)->MyClass::group->Group::Elements = QVariant::toMap() const()' に一致しません」をスローします。
この要素をクラスに入れるための正しい構文を学びたいです。
qt - Debian から Windows 用の QJson アプリをビルドできない
私のソースコード:
私のプロジェクトファイル:
これは、Debian でビルド (および実行) するとうまく機能します。
ただし、Windows 用にビルドすると失敗します。
Qt (4.8.3)、QJson (0.7.1)、および などのクロスビルド環境は、 MXEi686-pc-mingw32-qmake
の助けを借りて構築されていることに注意してください。
macos - Mac で QJson を使用してデータを解析する
私はQtプロジェクトに取り組んでいます。QJson を正常にインストールしました。パーサーを使用してデータを解析しました。コードは正常にコンパイルされましたが、実行時に次のエラーが表示されます。
dyld: ライブラリがロードされていません: libqjson.0.dylib
参照元: /Users/sanjay/untitled1-build-desktop-Qt_4_8_3_in_PATH_ System _Debug/untitled1.app/Contents/MacOS/untitled1
理由: 画像が見つかりません
ライブラリを Qt クリエータに外部ライブラリとして追加しました。次のコードを .pro ファイルに追加しました。
macx: LIBS += -L$$PWD/../build/_preferred_path_/lib/ -lqjson
INCLUDEPATH += $$PWD/../build/_preferred_path_/include/qjson
DEPENDPATH += $$PWD/../build/_preferred_path_/include/qjson
誰が私に教えてもらえますか?私は何が間違っているのですか?