2017-01-06 1 views
0

cmake를 사용하여 파일을 연결하고 출력 파일 끝에 널 문자 (\0)를 추가하려고합니다. 누구든지 끝에 null을 추가하는 방법을 알고 있습니까? CONCAT에 대한 코드는 다음과 같습니다cmake를 사용하여 파일 끝에 null 문자를 추가하십시오.

file(APPEND ${out_file} NULL) 
file(APPEND ${out_file} "\\0") 
file(APPEND ${out_file} "\0" HEX) 

을하지만이 3 일의 아무도 :

function(cat in_file1 in_file2 out_file) 
    file(READ ${in_file1} CONTENTS) 
    file(WRITE ${out_file} "${CONTENTS}") 
    file(READ ${in_file2} CONTENTS) 
    file(APPEND ${out_file} "${CONTENTS}") 
endfunction() 

나는 방법 다음 시도한 끝에 '\0'를 추가하지 않으려면. 누구든지 여기에서 도울 수 있습니까?

+0

당신이 입력 파일 또는 HEX에서 볼 같은 텍스트로 최종 파일을 하시겠습니까 (예 : 최종 파일 : 6369616f2c20736f6e6f0a73692c73690a7365636f6e646f2c206a6a6a6a0a6563636f6c6f20696c207365636f6e646f0a00)? 텍스트로 원한다면 왜 마지막에 null 문자를 추가할까요? 당신이 16 진수로 원한다면 그것은 또 다른 이야기입니다. – fedepad

+0

'file (APPEND $ {out_file} "\ 0")'을 시도 했습니까? – wasthishelpful

+0

@wasthishelpful : 예. 그것도 작동하지 않습니다. – tejas

답변

0

가지고 계신 것을 대신 사용해보십시오.

function(cat in_file1 in_file2 out_file) 
     file(READ ${in_file1} CONTENTS HEX) 
     file(WRITE ${out_file} "${CONTENTS}") 
     file(READ ${in_file2} CONTENTS HEX) 
     file(APPEND ${out_file} "${CONTENTS}00") 
endfunction() 

이것은 생성 된 16 진수 문자열 끝에 null 바이트를 추가해야합니다. 그렇다면 어떻게 해야할지 모르겠다.
이 방향으로 어떤 작업이 있지만 다른 예제를 모르겠습니다. 나는 모두 링크 된 예는 사건 해결하는 데 도움이 될 수 있다고 생각 :

binary_to_hex
embed_binary_files

+0

번호. 그것은 작동하지 않았다. 보고 해 주신 덕분에 – tejas

+0

주셔서 감사합니다. 내가 제공 한 링크를 확인 했습니까? 어쩌면 당신은 그들에게서 영감을 얻을 수 있습니다 .... – fedepad

+0

죄송합니다. 아직 링크를 확인하지 않았습니다. 그것들을 확인하고 다시보고 할 것입니다. 감사. – tejas

관련 문제