如何创建bat文件并向文件中写入字符串语句?

解决方案 »

  1.   

    var
      BackupName: string;
      FileHandle: Integer;
      StringLen: Integer;
    begin
      if SaveDialog1.Execute then
      begin
        if FileExists(SaveDialog1.FileName) then
        begin
          BackupName := ExtractFileName(SaveDialog1.FileName);
          BackupName := ChangeFileExt(BackupName, '.BAt');
          if not RenameFile(SaveDialog1.FileName, BackupName) then     raise Exception.Create('Unable to create backup file.');
        end;
        FileHandle := FileCreate(SaveDialog1.FileName);
        FileWrite(FileHandle, 'ddddddddd', SizeOf('ddddddddd'));
        FileClose(FileHandle);
      end;
      

  2.   

    procedure WriteToStream(Str: string; Stream: TStream);
    var
       Len: integer;
    begin
       Len := Length(Str);
       Stream.WriteBuffer(Len,sizeof(Len));
       if Len > 0 then
          Stream.WriteBuffer(Str[1],Len);
    end;var
      stream: tfilestream;
      str: string;
    begin
      str := 'i am naughtboy';
      stream := tfilestream.Create('c:\aaa.bat',fmcreate);
      writetostream(str,stream)
    end;
      

  3.   

    naughtyboy 非常感谢!!!
    但是为什么bat文件中开头会出现一个大写的K呢?什么原因?请回复!
      

  4.   

    文件的头一个字节的是文件的大小,然后才识文件内容
    你用ultraedit可以看出来。另外忘了告诉你,steram用完要free掉