c++builder文件读写方法

打开文件时读写类型如下:

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);
}
//---------------------------------------------------------------------------



 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值