Questão nº 53
Questão de Administração de Banco de Dados · FGV MPAL 2018 (nº 53)
No C#, a classe FileStream permite operações sobre arquivos, tais como leitura e gravação, dentre outras. Na criação de um objeto dessa classe, é preciso fornecer um valor para o parâmetro FileMode, que define como o arquivo é aberto.
Assinale a opção que não é uma escolha válida para esse parâmetro.
- AAppend.
- BCreateNew.
- COpenOrCreate.
- DRewrite. (alternativa correta)
- ETruncate.
Resposta comentada
Gabarito Alternativa D
O parâmetro FileMode em C# é como você diz ao sistema operacional o que fazer com um arquivo quando você tenta abri-lo: se é para criar um novo, abrir um existente, apagar o conteúdo, etc.
- (A) Incorreta:
Appendé uma opção válida deFileModeque abre o arquivo e posiciona o ponteiro no final para adicionar dados, ou cria o arquivo se ele não existir. - (B) Incorreta:
CreateNewé uma opção válida deFileModeque cria um novo arquivo; se o arquivo já existir, uma exceção é lançada. - (C) Incorreta:
OpenOrCreateé uma opção válida deFileModeque abre o arquivo se ele existir, ou cria um novo arquivo se não existir. - (D) Correta:
Rewritenão é uma opção válida do enumeradorFileModeem C#. Embora o conceito de "reescrever" um arquivo exista (geralmente usandoFileMode.CreateouFileMode.Truncateseguido de escrita), não há um membroFileMode.Rewrite. A armadilha aqui é que "reescrever" é uma ação comum, mas não um nome de enumeração direto. - (E) Incorreta:
Truncateé uma opção válida deFileModeque abre um arquivo existente e apaga todo o seu conteúdo (define o tamanho para zero); se o arquivo não existir, uma exceção é lançada.
Fonte: FGV MPAL 2018 Analista do Ministério Público - Administrador de Banco de Dados (Caderno Tipo 1). Reproduzida para fins de estudo.