本文整理汇总了C++中CFileBasic::Kill方法的典型用法代码示例。如果您正苦于以下问题:C++ CFileBasic::Kill方法的具体用法?C++ CFileBasic::Kill怎么用?C++ CFileBasic::Kill使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CFileBasic
的用法示例。
在下文中一共展示了CFileBasic::Kill方法的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: LoadTGA
BOOL LoadTGA(CImage* pcImage, char* szFilename)
{
static char uTGAcompare[12] = {0,0, 2,0,0,0,0,0,0,0,0,0}; // Uncompressed True Colour TGA Header
//static char cTGAcompare[12] = {0,0,10,0,0,0,0,0,0,0,0,0}; // Compressed True Colour TGA Header
STGAFileHeader tgaheader;
CFileBasic sFile;
//----------------------------------------------------------------------
// open the tga file.
//----------------------------------------------------------------------
sFile.Init(DiskFile(szFilename));
if (!sFile.Open(EFM_Read))
{
sFile.Kill();
return FALSE;
}
//----------------------------------------------------------------------
// read the header
//----------------------------------------------------------------------
if (sFile.Read(&tgaheader, 1, 12) != 12)
{
sFile.Close();
sFile.Kill();
return FALSE;
}
sFile.Close();
sFile.Kill();
//----------------------------------------------------------------------
// check whether the TGA Header matches a compressed one or not
//----------------------------------------------------------------------
if (memcmp(uTGAcompare, &tgaheader, 12) == 0)
{
return LoadUncompressedTrueColourTGA(pcImage, szFilename);
}
/*
else
if (memcmp(cTGAcompare, &tgaheader, 10) == 0)
{
return LoadCompressedTrueColourTGA(pcImage, filename);
}
*/
//----------------------------------------------------------------------
// if no header is matched, this is not a supported TGA format.
//----------------------------------------------------------------------
return FALSE;
}
示例2: TestLogFileRead
void TestLogFileRead(void)
{
CLogFile* pcLogFile;
CMemoryFile* pcMemoryFile;
CFileBasic cFile;
BOOL bResult;
int iLength;
char sz[200];
filePos iRead;
pcMemoryFile = MemoryFile();
cFile.Init(pcMemoryFile);
cFile.Open(EFM_Write_Create);
cFile.WriteString("The suspense is killing me!");
cFile.Close();
pcLogFile = LogFile(pcMemoryFile);
cFile.Init(pcLogFile);
bResult = cFile.Open(EFM_Read);
AssertTrue(bResult);
pcLogFile->Begin();
bResult = cFile.ReadStringLength(&iLength);
AssertTrue(bResult);
AssertInt(28, iLength);
AssertFalse(cFile.IsEndOfFile());
bResult = cFile.ReadStringChars(sz, iLength);
AssertString("The suspense is killing me!", sz);
AssertTrue(cFile.IsEndOfFile());
memset(sz, 0, 200);
bResult = cFile.Seek(20);
AssertTrue(bResult);
bResult = cFile.ReadStringChars(sz, 8);
AssertString("killing ", sz);
AssertLongLongInt(28, cFile.GetFilePos());
AssertFalse(cFile.IsEndOfFile());
memset(sz, 0, 200);
bResult = cFile.ReadStringChars(sz, 4);
AssertString("me!", sz);
AssertLongLongInt(32, cFile.GetFilePos());
AssertTrue(cFile.IsEndOfFile());
iRead = cFile.Read(sz, 1, 1);
AssertLongLongInt(0, iRead);
AssertLongLongInt(32, cFile.GetFilePos());
AssertTrue(cFile.IsEndOfFile());
AssertLongLongInt(32, cFile.GetFilePos());
AssertTrue(cFile.IsEndOfFile());
bResult = cFile.Close();
AssertTrue(bResult);
cFile.Kill();
}
示例3: TestIndexTreeMemoryReadWrite
void TestIndexTreeMemoryReadWrite(void)
{
CFileBasic cFile;
CIndexTreeMemory cIndex;
CIndexTreeMemory cIndexIn;
cIndex.Init();
cIndex.Put("AAA", "DENISA", 7);
cIndex.Put("AA", "FATJETA", 8);
cIndex.Put("AAB", "ARIANA", 7);
cIndex.Put("AAC", "GEORGE", 7);
cIndex.Put("AB", "IRMA", 5);
cIndex.Put("ABA", "JULIANA", 8);
cIndex.Put("ABB", "LULE", 5);
cIndex.Put("C", "VENERA", 7);
cIndex.Put("DDDD", "PRANVERA", 9);
cIndex.Put("DD", "PRIMERA", 8);
AssertInt(14, cIndex.CountAllocatedNodes());
AssertInt(10, cIndex.RecurseSize());
AssertInt(10, cIndex.NumElements());
cFile.Init(MemoryFile());
cFile.Open(EFM_Write_Create);
AssertTrue(cIndex.Write(&cFile));
cIndex.Kill();
cFile.Close();
cFile.Open(EFM_Read);
AssertTrue(cIndexIn.Read(&cFile));
cFile.Close();
cFile.Kill();
AssertInt(14, cIndexIn.CountAllocatedNodes());
AssertInt(10, cIndexIn.RecurseSize());
AssertInt(10, cIndexIn.NumElements());
AssertString("DENISA", (char*)cIndexIn.Get("AAA"));
AssertString("FATJETA", (char*)cIndexIn.Get("AA"));
AssertString("ARIANA", (char*)cIndexIn.Get("AAB"));
AssertString("GEORGE", (char*)cIndexIn.Get("AAC"));
AssertString("IRMA", (char*)cIndexIn.Get("AB"));
AssertString("JULIANA", (char*)cIndexIn.Get("ABA"));
AssertString("LULE", (char*)cIndexIn.Get("ABB"));
AssertString("VENERA", (char*)cIndexIn.Get("C"));
AssertString("PRANVERA", (char*)cIndexIn.Get("DDDD"));
AssertString("PRIMERA", (char*)cIndexIn.Get("DD"));
cIndexIn.Kill();
}
示例4: TestLogFileOpen
void TestLogFileOpen(void)
{
CLogFile* pcLogFile;
CMemoryFile* pcMemoryFile;
CFileBasic cFile;
BOOL bResult;
pcMemoryFile = MemoryFile();
pcLogFile = LogFile(pcMemoryFile);
AssertNotNull(pcLogFile);
cFile.Init(pcLogFile);
bResult = cFile.Open(EFM_ReadWrite_Create);
AssertTrue(bResult);
bResult = cFile.Close();
AssertTrue(bResult);
cFile.Kill();
}
示例5: TestBufferedFileReadWrite
void TestBufferedFileReadWrite(void)
{
CFileUtil cFileUtil;
CFileBasic cFile;
CTextFile cText;
char sz[20];
cFileUtil.Delete("Test.txt");
cFile.Init(BufferedFile(DiskFile("Test.txt"), 3));
cFile.Open(EFM_ReadWrite_Create);
cFile.Write("abcdefghijklmn", 1, 14);
cFile.Write("op", 1, 2);
cFile.Seek(3);
memset(sz, 0, 20);
cFile.Read(sz, 2, 1);
AssertString("de", sz);
cFile.Read(sz, 2, 1);
AssertString("fg", sz);
cFile.Write("12", 2, 1);
cFile.Read(sz, 2, 1);
AssertString("jk", sz);
cFile.Write("34", 2, 1);
cFile.Read(sz, 2, 1);
AssertString("no", sz);
cFile.Seek(2);
cFile.Write("XY", 2, 1);
cFile.Read(sz, 1, 3);
AssertString("efg", sz);
cFile.Close();
cFile.Kill();
cText.Init();
cText.Read("Test.txt");
AssertString("abXYefg12jk34nop", cText.mcText.Text());
cText.Kill();
cFileUtil.Delete("Test.txt");
}
示例6: TestLogFileMultipleReadsAfterOpens
void TestLogFileMultipleReadsAfterOpens(void)
{
CLogFile* pcLogFile;
CDiskFile* pcDiskFile;
CFileBasic cFile;
CFileUtil cFileUtil;
char szSource[] = {"The Name of the Wise Man"};
int iSourcelen;
char szResult[50];
char szWrite[] = {"Cat Catt ct... "};
int iWriteLen;
char szA[] = {"A"};
cFileUtil.RemoveDir("Output/LogFile2");
cFileUtil.MakeDir("Output/LogFile2");
pcDiskFile = DiskFile("Output/LogFile2/OpenClose.txt");
pcDiskFile->Open(EFM_ReadWrite_Create);
iSourcelen = (int)strlen(szSource);
pcDiskFile->Write(szSource, iSourcelen + 1, 1);
pcDiskFile->Close();
AssertTrue(cFileUtil.Exists("Output/LogFile2/OpenClose.txt"));
pcLogFile = LogFile(pcDiskFile);
cFile.Init(pcLogFile);
pcLogFile->Begin();
AssertTrue(cFile.Open(EFM_Read));
AssertInt(iSourcelen + 1, (int)cFile.GetFileSize());
cFile.ReadData(szResult, iSourcelen + 1);
AssertString(szSource, szResult);
cFile.Close();
cFile.Open(EFM_ReadWrite_Create);
iWriteLen = (int)strlen(szWrite);
cFile.WriteData(szWrite, iWriteLen);
AssertInt(iSourcelen + 1, (int)cFile.GetFileSize());
pcLogFile->Close();
cFile.Delete();
AssertTrue(cFileUtil.Exists("Output/LogFile2/OpenClose.txt"));
AssertInt(0, (int)cFile.GetFileSize());
cFile.Open(EFM_ReadWrite_Create);
cFile.Write(szA, 2, 1);
AssertInt(2, (int)cFile.GetFileSize());
cFile.Close();
pcLogFile->Commit();
cFile.Kill();
AssertTrue(cFileUtil.Exists("Output/LogFile2/OpenClose.txt"));
AssertInt(2, cFileUtil.Size("Output/LogFile2/OpenClose.txt"));
pcDiskFile = DiskFile("Output/LogFile2/OpenClose.txt");
pcLogFile = LogFile(pcDiskFile);
cFile.Init(pcLogFile);
pcLogFile->Begin();
AssertTrue(cFile.Open(EFM_Read));
cFile.ReadData(szResult, 2);
AssertString("A", szResult);
cFile.Seek(0);
cFile.ReadData(szResult, 2);
AssertString("A", szResult);
cFile.Close();
cFile.Delete();
pcLogFile->Commit();
cFile.Kill();
AssertFalse(cFileUtil.Exists("Output/LogFile2/OpenClose.txt"));
}
示例7: TestLogFileWrite
//.........这里部分代码省略.........
bResult = cFile.Seek(8);
AssertTrue(bResult);
bResult = cFile.WriteData("camisole", 8);
AssertTrue(bResult);
AssertInt(1, pcLogFile->GetNumWrites());
AssertLongLongInt(32, pcLogFile->GetWriteSize(0));
AssertNull((char*)pcMemoryFile->GetBufferPointer());
cFile.Seek(0);
bResult = cFile.ReadStringLength(&iLength);
AssertTrue(bResult);
AssertInt(28, iLength);
AssertFalse(cFile.IsEndOfFile());
bResult = cFile.ReadStringChars(sz, iLength);
AssertString("The camisole is killing me!", sz);
AssertTrue(cFile.IsEndOfFile());
bResult = pcLogFile->Commit();
AssertTrue(bResult);
AssertString("The camisole is killing me!", (char*)RemapSinglePointer(pcMemoryFile->GetBufferPointer(), sizeof(int)));
bResult = cFile.Close(); //This should go before Commit
AssertTrue(bResult);
pcLogFile->Begin();
bResult = cFile.Open(EFM_ReadWrite_Create);
AssertTrue(bResult);
bResult = cFile.Seek(4);
AssertTrue(bResult);
bResult = cFile.WriteData("Dog", 3);
bResult = cFile.Seek(20);
AssertTrue(bResult);
bResult = cFile.WriteData("plurgle", 7);
AssertInt(2, pcLogFile->GetNumWrites());
AssertLongLongInt(3, pcLogFile->GetWriteSize(0));
AssertLongLongInt(7, pcLogFile->GetWriteSize(1));
AssertString("The camisole is killing me!", (char*)RemapSinglePointer(pcMemoryFile->GetBufferPointer(), sizeof(int)));
cFile.Seek(0);
bResult = cFile.ReadStringLength(&iLength);
AssertTrue(bResult);
AssertInt(28, iLength);
AssertFalse(cFile.IsEndOfFile());
bResult = cFile.ReadStringChars(sz, iLength);
AssertTrue(bResult);
AssertString("Dog camisole is plurgle me!", sz);
AssertTrue(cFile.IsEndOfFile());
bResult = pcLogFile->Commit();
AssertTrue(bResult);
AssertString("Dog camisole is plurgle me!", (char*)RemapSinglePointer(pcMemoryFile->GetBufferPointer(), sizeof(int)));
bResult = cFile.Close();
AssertTrue(bResult);
pcLogFile->Begin();
bResult = cFile.Open(EFM_ReadWrite_Create);
AssertTrue(bResult);
cFile.Seek(4);
cFile.WriteData("X", 1);
cFile.Seek(6);
bResult = cFile.WriteData("Z", 1);
cFile.Seek(28);
cFile.WriteData("A", 1);
cFile.Seek(30);
bResult = cFile.WriteData("C", 1);
AssertInt(4, pcLogFile->GetNumWrites());
cFile.Seek(5);
cFile.WriteData("Y", 1);
AssertInt(3, pcLogFile->GetNumWrites());
cFile.Seek(29);
cFile.WriteData("B", 1);
AssertInt(2, pcLogFile->GetNumWrites());
cFile.Seek(0);
bResult = cFile.ReadStringLength(&iLength);
AssertTrue(bResult);
bResult = cFile.ReadStringChars(sz, iLength);
AssertString("XYZ camisole is plurgle ABC", sz);
AssertTrue(cFile.IsEndOfFile());
bResult = pcLogFile->Commit();
AssertTrue(bResult);
AssertString("XYZ camisole is plurgle ABC", (char*)RemapSinglePointer(pcMemoryFile->GetBufferPointer(), sizeof(int)));
bResult = cFile.Close();
AssertTrue(bResult);
cFile.Kill();
}
示例8: LoadUncompressedTrueColourTGA
BOOL LoadUncompressedTrueColourTGA(CImage *pcImage, char *szFilename)
{
STGAImageHeader sTGAImageHeader;
STGAFileHeader sTGAFileHeader; // Used To Store Our File Header
CFileBasic sFile;
int iWidth;
int iHeight;
int iBitsPerPixel;
int iBytesPerPixel;
int iImageSize;
unsigned char* pvMem;
CImage cImageImport;
CImageCopier cCopier;
filePos iRead;
int i;
int iStride;
//----------------------------------------------------------------------
// open the tga file.
//----------------------------------------------------------------------
sFile.Init(DiskFile(szFilename));
if (!sFile.Open(EFM_Read))
{
sFile.Kill();
return FALSE;
}
//----------------------------------------------------------------------
// read the header
//----------------------------------------------------------------------
//Error check please.
memset(&sTGAFileHeader, 0, sizeof(STGAFileHeader));
sFile.Read(&sTGAFileHeader.iIDLength, 1, 1);
sFile.Read(&sTGAFileHeader.iColourMapType, 1, 1);
sFile.Read(&sTGAFileHeader.iImageType, 1, 1);
sFile.Read(&sTGAFileHeader.iFirstEntryIndex, 2, 1);
sFile.Read(&sTGAFileHeader.iColourMapLength, 2, 1);
sFile.Read(&sTGAFileHeader.iColourMapEntrySize, 1, 1);
sFile.Read(&sTGAFileHeader.iOriginX, 2, 1);
sFile.Read(&sTGAFileHeader.iOriginY, 2, 1);
//Error check please.
memset(&sTGAImageHeader, 0, sizeof(STGAImageHeader));
sFile.Read(&sTGAImageHeader.iImageWidth, 2, 1);
sFile.Read(&sTGAImageHeader.iImageHeight, 2, 1);
sFile.Read(&sTGAImageHeader.iPixelDepth, 1, 1);
sFile.Read(&sTGAImageHeader.iPixelDescriptor, 1, 1);
//----------------------------------------------------------------------
// get the TGA dimensions
//----------------------------------------------------------------------
iWidth = (sTGAImageHeader.iImageWidth);
iHeight = (sTGAImageHeader.iImageHeight);
iBitsPerPixel = sTGAImageHeader.iPixelDepth;
//----------------------------------------------------------------------
// Make Sure All Information Is Valid
//----------------------------------------------------------------------
if ((iWidth <= 0) || (iHeight <= 0))
{
sFile.Close();
sFile.Kill();
return FALSE;
}
switch (iBitsPerPixel)
{
case 16:
iBytesPerPixel = 2;
break;
case 24:
iBytesPerPixel = 3;
break;
case 32:
iBytesPerPixel = 4;
break;
default:
sFile.Close();
sFile.Kill();
return FALSE;
}
iBytesPerPixel = (iBitsPerPixel / 8); // Calculate The BYTES Per Pixel
iImageSize = (iBytesPerPixel * iWidth * iHeight); // Calculate Memory Needed To Store Image
iStride = iWidth * iBytesPerPixel;
pvMem = (unsigned char*)malloc(iImageSize);
iRead = sFile.Read(pvMem, iImageSize, 1);
if (iRead != 1)
{
free(pvMem);
sFile.Close();
sFile.Kill();
return FALSE;
}
sFile.Close();
sFile.Kill();
//.........这里部分代码省略.........
示例9: OptimiseBlock
BOOL CNamedIndexesOptimiser::OptimiseBlock(CNamedIndexesBlocks* pcBlocks, CIndexedFile* pcIndexedFile)
{
int i;
CNamesIndexedSorterSource* pcSource;
CFileBasic cDestFile;
BOOL bResult;
filePos iNumNames;
CNamedIndexedBlock cBlock;
if (!pcIndexedFile)
{
return TRUE;
}
bResult = AllocateSources(pcBlocks, pcIndexedFile);
ReturnOnFalse(bResult);
bResult = LoadInitialSources(pcIndexedFile, pcBlocks->GetDataSize());
ReturnOnFalse(bResult);
bResult = OpenDestinationFile(&cDestFile, pcIndexedFile->GetFileName());
if (!bResult)
{
KillSources();
return FALSE;
}
iNumNames = macSources.NumElements() * pcBlocks->GetNumBlocks();
for (i = 0; i < iNumNames; i++)
{
pcSource = GetSmallestSource(pcBlocks->GetNumBlocks());
if (!pcSource)
{
break;
}
bResult = cDestFile.WriteData(pcSource->mpcCurrent, pcBlocks->GetDataSize());
if (!bResult)
{
cDestFile.Close();
cDestFile.Kill();
KillSources();
return FALSE;
}
bResult = pcSource->ReadNext(pcIndexedFile->GetPrimaryFile(), pcBlocks->GetDataSize());
if (!bResult)
{
cDestFile.Close();
cDestFile.Kill();
KillSources();
return TRIERROR;
}
}
memset_fast(&cBlock, 0, pcBlocks->GetDataSize());
for (; i < iNumNames; i++)
{
cDestFile.WriteData(&cBlock, pcBlocks->GetDataSize());
}
cDestFile.Close();
cDestFile.Kill();
KillSources();
return TRUE;
}
示例10: TestBufferedFileWrite
void TestBufferedFileWrite(void)
{
CFileUtil cFileUtil;
CFileBasic cFile;
CTextFile cText;
cFileUtil.Delete("Test.txt");
cFile.Init(BufferedFile(DiskFile("Test.txt"), 3));
cFile.Open(EFM_Write_Create);
cFile.Write("ab", 1, 2);
cFile.Write("cd", 1, 2);
cFile.Close();
cFile.Kill();
cText.Init();
cText.Read("Test.txt");
AssertString("abcd", cText.mcText.Text());
cText.Kill();
cFile.Init(BufferedFile(DiskFile("Test.txt"), 5));
cFile.Open(EFM_Write_Create);
cFile.Write("abcdefghi", 1, 9);
cFile.Write("jklmn", 1, 5);
cFile.Close();
cFile.Kill();
cText.Init();
cText.Read("Test.txt");
AssertString("abcdefghijklmn", cText.mcText.Text());
cText.Kill();
cFile.Init(BufferedFile(DiskFile("Test.txt"), 5));
cFile.Open(EFM_ReadWrite);
cFile.Seek(4);
cFile.Write("xyz", 3, 1);
cFile.Close();
cFile.Kill();
cText.Init();
cText.Read("Test.txt");
AssertString("abcdxyzhijklmn", cText.mcText.Text());
cText.Kill();
cFile.Init(BufferedFile(DiskFile("Test.txt"), 8));
cFile.Open(EFM_ReadWrite);
cFile.Seek(0, EFSO_END);
cFile.Write("opqrst", 6, 1);
cFile.Seek(0);
cFile.Write("123456", 6, 1);
cFile.Write("78", 2, 1);
cFile.Close();
cFile.Kill();
cText.Init();
cText.Read("Test.txt");
AssertString("12345678ijklmnopqrst", cText.mcText.Text());
cText.Kill();
cFile.Init(BufferedFile(DiskFile("Test.txt"), 3));
cFile.Open(EFM_Write_Create);
cFile.Write("ab", 1, 2);
cFile.Write("cdef", 1, 4);
cFile.Write("gh", 1, 2);
cFile.Close();
cFile.Kill();
cText.Init();
cText.Read("Test.txt");
AssertString("abcdefgh", cText.mcText.Text());
cText.Kill();
cFileUtil.Delete("Test.txt");
}
示例11: TestBufferedFileRead
void TestBufferedFileRead(void)
{
CFileUtil cFileUtil;
CFileBasic cFile;
CTextFile cText;
char sz[20];
char c;
int iCount;
int i;
char szExpected[20];
cFileUtil.Delete("Test.txt");
cText.Init();
cText.mcText.Append("abcdefghijk");
cText.Write("Test.txt");
cText.Kill();
cFile.Init(BufferedFile(DiskFile("Test.txt"), 3));
cFile.Open(EFM_Read);
for (c = 'a'; c <= 'k'; c++)
{
AssertFalse(cFile.IsEndOfFile());
memset(sz, 0, 20);
iCount = (int)cFile.Read(sz, 1, 1);
AssertChar(c, sz[0]);
AssertChar(0, sz[1]);
AssertInt(1, iCount);
}
AssertTrue(cFile.IsEndOfFile());
cFile.Seek(0);
szExpected[2] = 0;
for (i = 0; i < 5; i++)
{
AssertFalse(cFile.IsEndOfFile());
memset(sz, 0, 20);
iCount = (int)cFile.Read(sz, 1, 2);
szExpected[0] = 'a' + (char)i * 2;
szExpected[1] = 'b' + (char)i * 2;
AssertString(szExpected, sz);
AssertInt(2, iCount);
}
AssertFalse(cFile.IsEndOfFile());
memset(sz, 0, 20);
iCount = (int)cFile.Read(sz, 1, 2);
AssertString("k", sz);
AssertInt(1, iCount);
AssertTrue(cFile.IsEndOfFile());
cFile.Seek(0);
szExpected[3] = 0;
for (i = 0; i < 3; i++)
{
AssertFalse(cFile.IsEndOfFile());
memset(sz, 0, 20);
iCount = (int)cFile.Read(sz, 1, 3);
szExpected[0] = 'a' + (char)i * 3;
szExpected[1] = 'b' + (char)i * 3;
szExpected[2] = 'c' + (char)i * 3;
AssertString(szExpected, sz);
AssertInt(3, iCount);
}
AssertFalse(cFile.IsEndOfFile());
memset(sz, 0, 20);
iCount = (int)cFile.Read(sz, 1, 3);
AssertString("jk", sz);
AssertInt(2, iCount);
AssertTrue(cFile.IsEndOfFile());
cFile.Kill();
cFileUtil.Delete("Test.txt");
}