Como vocês algoritmam a detecção de aglomerados de ração MA? - página 13

 

Aberto:

int file_handle=FileOpen("test.bin",FILE_WRITE|FILE_READ|FILE_BIN);

Depois vá para o final do arquivo com FileSeek()

 
Dmitry Fedoseev:

Aberto:

Depois vá para o final do arquivo com FileSeek()

Dmitry obrigado, bom artigo.

Posso lhe fazer uma pergunta, se um arquivo existente for aberto com uma bandeira apenas para escrita, ele irá imediatamente sobrescrever vazio, no momento da abertura, ou no momento da primeira escrita?

É claro que sem ler a bandeira não podemos chegar ao fim, portanto não podemos salvar o conteúdo do arquivo nesta abertura, mas notei que mesmo sem escrever, apenas abrindo o arquivo perdemos o conteúdo.

 
Valeriy Yastremskiy:

Dmitry, obrigado, bom artigo.

Posso fazer uma pergunta, se um arquivo existente for aberto com a bandeira apenas para escrita, ele será sobrescrito vazio no momento da abertura, ou no momento da primeira escrita?

É claro que sem a bandeira apenas de leitura não podemos chegar ao fim, portanto não podemos salvar o conteúdo do arquivo ao abri-lo desta maneira, mas notei que mesmo sem escrever, ao abri-lo apenas, o arquivo perderia seu conteúdo.

Você pode fazer uma experiência - abrir, não escrever e fechar - o arquivo estará vazio. Segue-se que o arquivo é limpo quando é aberto.

O que há para se notar? Ele foi projetado dessa forma.

 
Dmitry Fedoseev:

Você pode fazer uma experiência - abrir, não escrever e fechar - o arquivo estará vazio. Segue-se que o arquivo é limpo quando é aberto.

O que há para se notar? Ele foi projetado dessa forma.

Quem vai verificar, me avise qual é o resultado.

 
Farkhat Guzairov:

Quem vai verificar, me avise qual é o resultado.

Verificado, mas não assim, depois de abrir um arquivo não vazio para escrever, minhas funções de escrita não estão vazias e começam após 100 segundos. Se eu não esperar e fechar os arquivos, os arquivos estarão vazios. Coloquei também para leitura, então o conteúdo do arquivo começou a permanecer. e não apagou o primeiro registro, se o cursor não for enviado para o final, escreve para o início do arquivo.

 
Valeriy Yastremskiy:

Verificado, mas não assim, depois de abrir um arquivo não vazio para escrever tenho as funções de escrita não vazias e começo depois de 100 segundos. Se eu não esperar e fechar os arquivos, os arquivos estarão vazios. Coloquei também para leitura, então o conteúdo do arquivo começou a permanecer. e não apagou o primeiro registro, se o cursor não for enviado para o final, escreve para o início do arquivo.

Eu também encontrei isto, mas não fui capaz de superar.

 
Farkhat Guzairov:

Então, eu também já encontrei isso e não consigo me livrar dele.

O que você encontrou e o que você não superou?

 
Farkhat Guzairov:

Eu também encontrei isto, mas não consegui superar.

Já superei tudo) Escreve tanto no início quanto, se necessário, no final do arquivo. Tudo funciona, você pode até mesmo no meio, se quiser).

 
Dmitry Fedoseev:

O que você encontrou e o que ainda não resolveu?

Eu entendo qual é o problema, se você escrever no início do arquivo, as linhas são sobregravadas, não deslocadas))))

É possível inserir linhas com as linhas inferiores deslocadas para baixo?

 
Valeriy Yastremskiy:

Acho que funcionou) Ele escreve no início e, se necessário, no final do arquivo. Tudo funciona, você pode até mesmo escrever para o meio, se quiser).

No início e no meio, ele não reinicia o conteúdo do arquivo e sobrescreve.