c++builder文件读写方法
2015-06-02 10:28
260 查看
打开文件时读写类型如下:
static const Word fmCreate = 0xffff;
static const Shortint fmOpenRead = 0x0;
static const Shortint fmOpenWrite = 0x1;
static const Shortint fmOpenReadWrite = 0x2;
static const Shortint fmShareCompat = 0x0;
static const Shortint fmShareExclusive = 0x10;
static const Shortint fmShareDenyWrite = 0x20;
static const Shortint fmShareDenyRead = 0x30;
static const Shortint fmShareDenyNone = 0x40;
static const Word fmCreate = 0xffff;
static const Shortint fmOpenRead = 0x0;
static const Shortint fmOpenWrite = 0x1;
static const Shortint fmOpenReadWrite = 0x2;
static const Shortint fmShareCompat = 0x0;
static const Shortint fmShareExclusive = 0x10;
static const Shortint fmShareDenyWrite = 0x20;
static const Shortint fmShareDenyRead = 0x30;
static const Shortint fmShareDenyNone = 0x40;
//--------------------------------------------------------------------------- #include <vcl.h> #include <sysutils.hpp> #pragma hdrstop #include "Unit1.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- int FileHandle; void __fastcall TForm1::Button1Click(TObject *Sender) { FileHandle = FileCreate("1.txt"); if(FileHandle == -1) { ShowMessage("文件创建失败!"); } } //--------------------------------------------------------------------------- void __fastcall TForm1::Button2Click(TObject *Sender) { FileHandle = FileOpen("1.txt",fmOpenReadWrite ); if(FileHandle == -1) { ShowMessage("打开文件失败!"); } } //--------------------------------------------------------------------------- void __fastcall TForm1::Button3Click(TObject *Sender) { char buf[1024]={0}; if(FileHandle) { int readCount = FileRead(FileHandle,buf,1024); Edit1->Text = buf; } else { ShowMessage("请打开文件!"); } } //--------------------------------------------------------------------------- void __fastcall TForm1::Button5Click(TObject *Sender) { char buf[1024]={0}; strcpy(buf,Edit1->Text.c_str()); int l = strlen(buf); //内容长度 buf[l] = '\r'; //加上换行符 buf[l+1] = '\n'; if(FileHandle) { int flen =FileSeek(FileHandle,0,2);//移动文件尾,换取文件长度 int a = strlen(buf); FileSeek(FileHandle,flen,0);//重新设置文件指针移动方向 FileWrite(FileHandle,buf,strlen(buf)); } else { ShowMessage("请先打开文件!"); } } //--------------------------------------------------------------------------- void __fastcall TForm1::Button4Click(TObject *Sender) { FileClose(FileHandle); } //---------------------------------------------------------------------------