Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. Converting Qbyte array to array and to double
Qt 6.12 LTS is out! See what's new in the release blog

Converting Qbyte array to array and to double

Scheduled Pinned Locked Moved Unsolved General and Desktop
14 Posts 3 Posters 1.4k Views 2 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • D Offline
    D Offline
    dziko147
    wrote on last edited by
    #5

    @artwaw yes in my code I have

    qDebug()  << "this is data"<< myDatadouble;
    QString DatatoString =QString::number(myDatadouble);
    

    just when i copying it i I was mistaken .

    I update my topic :)

    1 Reply Last reply
    0
    • D dziko147

      Hello , I get some data from a CAN Bus . So my data is some float and some double .

      What I did is :

      float myData;
      double myDatadouble;
      
                         QDataStream stream(data);
                          qDebug() << data.size() << " Data Data&size" ;
                         
                          if (data.size()== 5){
                             quint8 byte;
                              stream >> byte; // skip first byte
                    stream.setFloatingPointPrecision(QDataStream::SinglePrecision);
                              stream >> myData; // read data
                              qDebug()  << "this is data"<< myData ;
                              QString DatatoString =QString::number(myData);
                              Outputs[i]=DatatoString;
                          qDebug() << "In outputs data" << Outputs[i];
                          }
      else {
      
                         quint8 byte;
                          stream >> byte; // skip first byte
                              stream.setFloatingPointPrecision(QDataStream::DoublePrecision);
                           stream >> myDatadouble; // read data
                          qDebug()  << "this is data"<< myDatadouble;
                          QString DatatoString =QString::number(myDatadouble);
                          Outputs[i]=DatatoString;
                          qDebug() << "In outputs data" << Outputs[i];
                          }              
                         
      
      

      I get only float converted , the double is usually "0" .

      thankyou

      CP71C Offline
      CP71C Offline
      CP71
      wrote on last edited by CP71
      #6

      @dziko147
      Hi,
      you have checked only if (data.size()== 5) in first if,
      Did you check in else that the data size is correct?
      I think no

      1 Reply Last reply
      0
      • D Offline
        D Offline
        dziko147
        wrote on last edited by
        #7

        @CP71 yes it return a size :8 byte

        CP71C 1 Reply Last reply
        0
        • D dziko147

          @CP71 yes it return a size :8 byte

          CP71C Offline
          CP71C Offline
          CP71
          wrote on last edited by
          #8

          @dziko147
          8! so doesn't you have a one spare byte in else as in float case?

          1 Reply Last reply
          0
          • D Offline
            D Offline
            dziko147
            wrote on last edited by dziko147
            #9

            @CP71 said in Converting Qbyte array to array and to double:

            8! so doesn't you have a one spare byte in else as in float case?

            no I usually get frame started with FF .

            I mean than in the case of a float I get "FF + 4Byte data"

            In the case of a Double I get "FF +7Byte data "

            and here I skip the first byte

                               quint8 byte;
                                stream >> byte; // skip first byte
            
            CP71C 1 Reply Last reply
            0
            • D dziko147

              @CP71 said in Converting Qbyte array to array and to double:

              8! so doesn't you have a one spare byte in else as in float case?

              no I usually get frame started with FF .

              I mean than in the case of a float I get "FF + 4Byte data"

              In the case of a Double I get "FF +7Byte data "

              and here I skip the first byte

                                 quint8 byte;
                                  stream >> byte; // skip first byte
              
              CP71C Offline
              CP71C Offline
              CP71
              wrote on last edited by CP71
              #10

              @dziko147 said in Converting Qbyte array to array and to double:

              In the case of a Double I get "FF +7Byte data "

              Sorry, but in double case I think you'd send 0xFF+8bytes, anyway I think your application tries read a double at 8 bytes

              1 Reply Last reply
              0
              • D Offline
                D Offline
                dziko147
                wrote on last edited by
                #11

                @CP71 you are right :D

                1 Reply Last reply
                0
                • D Offline
                  D Offline
                  dziko147
                  wrote on last edited by
                  #12

                  @CP71 now how can make it readable .
                  For example I get " 3.13891e-43 " for a array "0xff000000e0" .
                  please

                  CP71C 1 Reply Last reply
                  0
                  • D dziko147

                    @CP71 now how can make it readable .
                    For example I get " 3.13891e-43 " for a array "0xff000000e0" .
                    please

                    CP71C Offline
                    CP71C Offline
                    CP71
                    wrote on last edited by
                    #13

                    @dziko147
                    It is wrong!

                    https://www.binaryconvert.com/convert_double.html

                    As last time, I must go.
                    Sorry, bye

                    1 Reply Last reply
                    0
                    • D Offline
                      D Offline
                      dziko147
                      wrote on last edited by
                      #14

                      @CP71 as u like bro good bye

                      1 Reply Last reply
                      1

                      • Login

                      • Login or register to search.
                      • First post
                        Last post
                      0
                      • Categories
                      • Recent
                      • Tags
                      • Popular
                      • Users
                      • Groups
                      • Search
                      • Get Qt
                      • Unsolved