como pular um arquivo dentro do arquivo tar para obter um arquivo em particular

Eu estou tentando obter o conteúdo de um arquivo html que está presente dentro do arquivo tar (estou usando o visual c ++ para realizar minha tarefa). minha abordagem é armazenar o tar em um buffer usando um fluxo e, em seguida, armazenar o conteúdo de html em outro buffer.Em seguida, usando buffer indo para o nome do arquivo de cada arquivo presente no arquivo tar no buffer de localização [0-100] (neste local que temos o nome do arquivo) e armazenar o nome do arquivo em "conteúdo" (no meu caso) e pesquisar se ele tem o arquivo extension.html?

Se ele tem .html no nome do arquivo, então armazene seu conteúdo do buffer de localização [PreviousFileSizes +512] (por PreviousFileSizes eu quero dizer que havia alguns arquivos antes deste arquivo html, então nós temos que adicionar seus tamanhos no índice de buffer para ir para o local correto, quero dizer, eu não estou supondo que o primeiro arquivo no arquivo tar é html file-no meu código i denotar este PreviousFileSizes por "skip" - isso significa que muito tamanho para pular para ir ao nosso arquivo html).

meu código para conseguir isso é-

int skip=0;
            char contents [100];
            //char test[1000];
            do
            {

                    int SizeOfFile = CreateOctalToInteger(&buffer[skip+124],11);
                    size_t distance= ((SizeOfFile%512) ? SizeOfFile + 512 - (SizeOfFile%512) : SizeOfFile );
                    size_t skip= distance +512;
                    memcpy(contents,&buffer[skip],100);




            }
            while(strstr(contents,".html") != NULL);

Eu estou indo certo? Por favor, corrija-me se há algo errado na minha lógica?

questionAnswers(2)

yourAnswerToTheQuestion