본문 바로가기
WORK/Sotfware

QT QString value to Hex file save

by KANG Stroy 2016. 5. 11.
728x90
728x90

QT 프로그램을 이용하여서 


Bin 파일을 읽어 온다. 

Text 창에서 수정 한 후 

다시 Bin 파일로 Save 하는 것입니다. 


MFC에는 간단하게 수정을 했는데.. QT에는 사용자가 적은지 찾기가 어려워서 올려 봅니다. 


일단 파일을 읽어 옵니다. 


파일 관련 부분은 이전에 적어 놓았습니다. 


 

이전에 적어 놓았다고 이야기하고 사라 지려 했지만, 나도 막상 다른 사람 블러그에 가면 찾기기 귀찮아서 ㅎㅎ 


위의 사진에서 

Open 버튼을 클릭 하면 


    QString filename,path;

    QString StrText;


    filename = QCoreApplication::applicationDirPath();


    QFile file(filename +"/1111.bin");


    if(!file.open(QIODevice::ReadOnly))

        return;


    QByteArray blob = file.readAll();


    path = blob.toHex();


    ui->textEdit->clear();

    ui->textEdit->append(path);


    file.close();


이와 같이 만들어 둡니다. 


파일명은 현재 경로에서 1111.bin 파일을 여는 것입니다. 

bin 파일을 만드는 여러 가지 프로그램이 있으니 찾아 보시기 바랍니다. 


1111.bin 파일 입니다. 


   QString filename,path;

    QString StrText,changData;

    QByteArray bytes;


    bytes = QByteArray::fromHex(StrText.toLatin1());


//    cnt = StrText.size();

//    ui->textEdit->append(changData.setNum(cnt));  // count value 


    filename = QCoreApplication::applicationDirPath();

    path = (filename +"/1112.bin"); // path 

    QString tmpFileName = path;


    QFile file(tmpFileName);


    bool ok = file.open(QIODevice::WriteOnly);


    file.write(bytes);


    file.close();


Save Button 을 누르면 

현재 폴더에 1112.bin으로 저장 됩니다. 


첫 줄의 첫 바이트를 0F -> 1F 로 변경하였습니다. 



다른것은 없고 위의 소스가 전부 이니 참고 하시기 바랍니다. 

728x90

'WORK > Sotfware' 카테고리의 다른 글

배열 과 포인터  (0) 2016.10.20
랜덤 함수  (0) 2016.05.12
QT New file insert  (0) 2016.05.04
QT Hex 파일 읽기  (0) 2016.05.03
QT 특정 글자 위치 찾기  (0) 2016.04.04

댓글