文档章节

把 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 基础 笔记

1、线程启动为什么要运用start()而不是run? 因为线程牵扯到操作系统的资源分配问题,所不能直接运用run方法,而需要使用start方法,这个方法实际上是去调用操作系统的方法。 2、线程的三种实...

AIting
2016/11/27
36
0

没有更多内容

加载失败,请刷新页面

加载更多

升压变换器 Boost

工作特点 输入输出极性相同。 开关管 MOS 和负载构成并联,在MOS 导通时,电流通过 L 滤波,电源对 L 充电。 当 MOS 断开时,L 向负载及电源放电,输出电压将是 Ui+U L ,达到升压的目的。 ...

colinux
28分钟前
1
0
OSChina 周一乱弹 —— 你狗命在我手上

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 小小编辑:推荐歌曲,《I.W.A.B.N》- Lil Ghost 《I.W.A.B.N》- Lil Ghost 手机党少年们想听歌,请使劲儿戳(这里) 几天没见, 大王(@罗马的...

小小编辑
30分钟前
169
7
轻量级 memcached缓存代理 twemproxy实践

本文内容脑图如下: 文章共 533字,阅读大约需要 2分钟 ! 概 述 twemproxy(nutcracker) 是 Twitter开源的轻量级 memcached / redis 代理服务器,本质就是一个集群管理工具,主要用来弥补 ...

CodeSheep
50分钟前
7
0
Apache日志不记录访问静态文件,访问日志切割,静态元素过期时间设置

Apache配置不记录访问静态文件的日志 网站大多元素为静态文件,如图片、css、js等,这些元素可以不用记录 vhost原始配置 <VirtualHost *:80> ServerAdmin test@163.com DocumentRoo...

野雪球
今天
3
0
聊聊storm的ICommitterTridentSpout

序 本文主要研究一下storm的ICommitterTridentSpout ICommitterTridentSpout storm-core-1.2.2-sources.jar!/org/apache/storm/trident/spout/ICommitterTridentSpout.java public interface......

go4it
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部