如何将一个缓冲区数据保存到一个文件里 ( 积分: 100 )

  • 主题发起人 主题发起人 QXCOMM
  • 开始时间 开始时间
Q

QXCOMM

Unregistered / Unconfirmed
GUEST, unregistred user!
另:如何将一个缓冲区数据保存到一个文件里
 
另:如何将一个缓冲区数据保存到一个文件里
 
var<br>buf:xx;//数组记录等类型<br>sfile:Tfilestream;<br>begin<br>if &nbsp;fileexists(sfile) <br> &nbsp; then exit;<br> sfile:=Tfilestream('c:/1.tmp',fmcreate);<br> sfile.seek(0,sofrombegin);<br> sfile.readbuffer(buf,sizeof(buf));<br> sfile.free;<br>end;
 
baiduan:<br><br>如何将一个缓冲区数据保存到一个文件里 <br>谢谢!
 
1.如何将一个缓冲区数据保存到一个文件里 <br>2.如何定义一个缓冲区变量,并把一个文件路径付值给它
 
baiduan说的就是使用流<br>使用文件流可以将任意数据保存到文件中<br>只要指定指针及要保存的长度就可以了
 
如何将文件路径及文件名符给缓冲区变量
 
int _PubKey_IO(char *buf1,int *len1,char *buf2,int *len2,int Action)<br><br>'Action=P12:<br>'buf1指向一个数据缓冲区,区内存放读P12文件名字串、<br>'len1指向一个表示buf1数据缓冲区最大长度的int变量(不需要读取私钥时置0);<br>'buf2指向一个数据缓冲区,区内存放读P12文件的密码,如果该文件不需要密码,则将其第一个字节置0、<br>'len2指向一个表示buf2数据缓冲区最大长度的int变量;<br>'操作结果:将P12文件的公钥读入并以PEM格式放入buf2缓冲区,len2为读入后的数据块有效长度。<br>'如果buf2空间不够大,len2指向的变量返回实际需要值,<br>'将P12文件的私钥读入并以PEM格式放入buf1缓冲区,len1为读入后的数据块有效长度。<br>'如果buf2空间不够大,len2指向的变量返回实际需要值,<br>'如果密码无效,len1和len2指向的变量返回-1。<br>'操作成功:返回值&lt;&gt;0,失败:返回值=0。<br>'利用这个函数实现&quot;查看&quot;公钥、&quot;分拆匙包&quot;功能(先Action=P12读出公私钥,然后分别存盘)<br>*/<br><br>这个函数如何写?能帮忙看看吗
 
沉的太快了
 
帮忙给看看吧
 
不太清楚你究竟想问什么。<br>var<br> &nbsp;buf1, buf2: PChar;<br> &nbsp;len1, len2: Longint;<br>begin<br> &nbsp;buf1 := 'C:/P12.txt';<br> &nbsp;len1 := StrLen(buf1);<br> &nbsp;buf2 := 密码'';<br> &nbsp;len2 := StrLen(buf2);<br> &nbsp;_PubKey_IO(buf1, len1, buf2, len2, Action)<br>end;
 
vvyang<br>那如何将缓冲区buf1中的数据保存到一个文件中啊
 
BlockWrite <br>(In System Unit)<br><br>Delphi syntax:<br><br>procedure BlockWrite(var f: File; var Buf; Count: Integer [; var AmtTransferred: Integer]);<br><br>Description<br><br>F is an untyped file variable, Buf is any variable, Count is an expression of type Integer, and AmtTransferred is an optional variable of type Integer.<br><br>BlockWrite writes Count or fewer records to the file F from memory, starting at the first byte occupied by Buf. The actual number of complete records written (less than or equal to Count) is returned in AmtTransferred. <br><br>The entire block transferred occupies at most Count * RecSize bytes. RecSize is the record size specified when the file was opened (or 128 if the record size was unspecified). <br><br>If the entire block is transferred, AmtTransferred is equal to Count on return. <br><br>If AmtTransferred is less than Count, the disk became full before the transfer was complete. In this case, if the file's record size is greater than 1, AmtTransferred returns the number of complete records written.<br><br>BlockWrite advances the current file position by AmtTransferred records.<br><br>If AmtTransferred isn't specified, an I/O error occurs if the number written isn't equal to Count. If the $I+ compiler directive is in effect, errors raise an EInOutError exception.
 
Action=P12????是什么意思???? p12是什么???<br>buf1:文件名???<br>buf2:读取文件的密码??? <br>私钥公钥都在哪????<br><br>完全簿明白说什么呢
 
bjyplbx<br>看不明白就不要说了,你说的话没有任何意义<br>为什么别人能看懂呢
 
API 行不<br> 先用Createfile 创建一文件句柄,<br> 再用WriteFile()将Buffer写入文件<br> 调用CloseHandle关闭文件句柄
 
如何将一个缓冲区数据保存到一个文件里这个是可以看懂,但是你说的那个函数就看不明白
 
多人接受答案了。
 
缓冲区 就是内存(包括虚拟)块,<br>一般是数组,记录,堆栈,队列,变量<br>你所说的东西都是这些类型中的<br>可以用流的方式存贮
 
后退
顶部