mirror of
https://github.com/borgesdan/xn65
synced 2024-12-29 21:54:47 +01:00
Correções em FileStream
This commit is contained in:
parent
5a3f0e7335
commit
9ae4a5b8ca
@ -116,6 +116,7 @@ namespace xna {
|
|||||||
virtual constexpr void Close() override {
|
virtual constexpr void Close() override {
|
||||||
_closed = true;
|
_closed = true;
|
||||||
_buffer = std::vector<uint8_t>();
|
_buffer = std::vector<uint8_t>();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
virtual int64_t Seek(int64_t offset, SeekOrigin const& origin) override;
|
virtual int64_t Seek(int64_t offset, SeekOrigin const& origin) override;
|
||||||
|
@ -128,14 +128,12 @@ namespace xna {
|
|||||||
{
|
{
|
||||||
//Especifica se deve abrir um arquivo existente.
|
//Especifica se deve abrir um arquivo existente.
|
||||||
case FileMode::Open:
|
case FileMode::Open:
|
||||||
if (!exists) {
|
if (!exists)
|
||||||
_closed = true;
|
Exception::Throw("The specified file does not exist.");
|
||||||
return;
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
//Especifica que se deve abrir um arquivo, se existir;
|
//Especifica que se deve abrir um arquivo, se existir;
|
||||||
// caso contrário, um novo arquivo deverá ser criado.
|
// caso contrário, um novo arquivo deverá ser criado.
|
||||||
case FileMode::OpenOrCreate:
|
case FileMode::OpenOrCreate:
|
||||||
case FileMode::Create:
|
case FileMode::Create:
|
||||||
if (!exists)
|
if (!exists)
|
||||||
flags |= std::fstream::trunc;
|
flags |= std::fstream::trunc;
|
||||||
@ -146,7 +144,7 @@ namespace xna {
|
|||||||
if (!exists)
|
if (!exists)
|
||||||
flags |= std::fstream::trunc;
|
flags |= std::fstream::trunc;
|
||||||
else
|
else
|
||||||
return;
|
Exception::Throw("The specified file already exists.");
|
||||||
break;
|
break;
|
||||||
//Abre o arquivo, se existir, e busca o final do arquivo ou cria um novo arquivo.
|
//Abre o arquivo, se existir, e busca o final do arquivo ou cria um novo arquivo.
|
||||||
case FileMode::Append:
|
case FileMode::Append:
|
||||||
@ -160,6 +158,9 @@ namespace xna {
|
|||||||
//para que seu tamanho seja zero bytes.
|
//para que seu tamanho seja zero bytes.
|
||||||
//Tentativa de ler um arquivo truncado retornará 0;
|
//Tentativa de ler um arquivo truncado retornará 0;
|
||||||
case FileMode::Truncate:
|
case FileMode::Truncate:
|
||||||
|
if(!exists)
|
||||||
|
Exception::Throw("The specified file does not exist.");
|
||||||
|
|
||||||
flags |= std::fstream::trunc;
|
flags |= std::fstream::trunc;
|
||||||
_truncated = true;
|
_truncated = true;
|
||||||
break;
|
break;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user