文档章节

把 Integer 数组保存到文件、并读取

涂孟超
 涂孟超
发布于 2014/09/26 15:37
字数 227
阅读 5
收藏 0
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

type
  TIntArray = array of Integer;

{把 Integer 数组写入文件的函数}
function IntArrToFile(ns: TIntArray; FileName: string): Boolean;
var
  IntFile: file of Integer;
  n: Integer;
begin
  try
    AssignFile(IntFile, FileName);
    if FileExists(FileName) then Reset(IntFile) else Rewrite(IntFile);
    Seek(IntFile, FileSize(IntFile));
    for n in ns do Write(IntFile, n);
    Result := True;
  finally
    CloseFile(IntFile);
  end;  
end;

{读取的函数}
function FileToIntArr(FileName: string; var ns: TIntArray): Integer;
var
  IntFile: file of Integer;
begin
  if not FileExists(FileName) then Exit(0);
  AssignFile(IntFile, FileName);
  Reset(IntFile);

  while not Eof(IntFile) do
  begin
    SetLength(ns, Length(ns)+1);
    Read(IntFile, ns[High(ns)]);
  end;

  CloseFile(IntFile);
  Result := Length(ns);
end;

{写入测试}
procedure TForm1.Button1Click(Sender: TObject);
var
  IntArr: TIntArray;
begin
  SetLength(IntArr, 3);
  IntArr[0] := 111;
  IntArr[1] := 222;
  IntArr[2] := 333;

  IntArrToFile(IntArr, 'c:\temp\test.num');
end;

{读取测试}
procedure TForm1.Button2Click(Sender: TObject);
var
  IntArr: TIntArray;
  n: Integer;
begin
  FileToIntArr('c:\temp\test.num', IntArr);
  for n in IntArr do ShowMessage(IntToStr(n));
end;

end.

 
 
 
 
 

 

 

  

本文转载自:http://www.cnblogs.com/del/archive/2009/04/14/1435907.html

共有 人打赏支持
涂孟超
粉丝 12
博文 2011
码字总数 14107
作品 0
深圳
程序员
Android应用资源---其他资源类型(More Types)(三)

整数型资源 在XML中定义的整数。 注意:整数是一个简单的资源,用name属性提供的值来引用资源。如,能够把整数型资源跟其他简单的资源组合在一个XML文件的元素下。 文件位置(FILE LOCATION...

长平狐
2012/10/16
196
0
第15章 进程间通行 15.3函数popen和pclose

<436> (1) FILE popen(const char command, const char *type); popen函数创建一个连接到另一个进程的管道。 若type是“r”,则文件指针连接到command的标准输出,可通过文件指针读取comma...

fxdhdu
2015/10/13
20
0
ThinkPHP单字母函数(快捷方法)使用总结

ThinkPHP单字母函数(快捷方法)使用总结 投稿:shichen2014 字体:[增加 减小] 类型:转载 时间:2014-07-23 这篇文章主要介绍了ThinkPHP单字母函数(快捷方法)使用总结,对ThinkPHP的快捷方法做...

thinkyoung
2015/09/06
0
0
iOS数据持久化——属性列表

1、属性列表(plist) iOS提供了一种plist格式的文件(属性列表)用于存储轻量级的数据,并且只能保存NSDictionary、NSArray、NSString、NSNumber、Boolean、NSData、NSDate 类型的数据。将这些类...

kinglin_fu
2016/01/29
86
0
JAVA NIO服务器间连续发送文件(本地测试版)

说在前面:给我的需求是实现从服务器A将大量文件(大概几十TB)发送到服务器B,在A服务器生成文件的MD5码,并在服务器B进行md5验证,验证通过保存。 我的实现思路: 将待上传的所有文件目录生...

枫叶还没红
2017/07/06
0
0

没有更多内容

加载失败,请刷新页面

加载更多

麒麟AI首席科学家现世

8月31日,华为发布了新一代顶级人工智能手机芯片麒麟980,成为全球首款7nm工艺手机芯片,AI方面也实现飞跃,支持人脸识别、物体识别、物体检测、图像分割、智能翻译等。 虽然如今人人都在热议...

问题终结者
昨天
1
0
告警系统主脚本、告警系统配置文件、告警系统监控项目

告警系统主脚本 main.sh内容 #!/bin/bash#Written by aming.# 是否发送邮件的开关export send=1# 过滤ip地址export addr=`/sbin/ifconfig |grep -A1 "ens33: "|awk '/inet/ {pr...

芬野de博客
昨天
2
0
MySQL autocommit探究

-- sessionA:tx_isolation=REPEATABLE-READmysql> select connection_id();+-----------------+| connection_id() |+-----------------+| 28 |+-----------------+......

安小乐
昨天
7
0
c++多线程锁 Mutex  自动判断死锁

c++多线程锁可以使用absl::Mutex std::mutex这两种,下面是demo代码。 使用absl:Mutex的时候打印: [mutex.cc : 1338] RAW: Cycle: [mutex.cc : 1352] RAW: mutex@0x683b68 stack: @ 0x43856......

青黑
昨天
3
0
Blockathon2018(成都站)比赛落幕,留给我们这些区块链应用思考

9月14日,HiBlock区块链社区主办的第二届Blockathon在成都菁融国际广场成功举行,30名参赛者分为5支队伍在48小时内完成区块链项目的创意、开发及路演,经过紧张的开发及现场评选,最终币托(...

HiBlock
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部