PB读取文件的时候,每次只能读取32K,所以当文件大于32K的时候就要分多次读取
以下是一个读取大于32K的文件并放在一个blob对象里面
long ll_filelen, ll_read = 0
integer li_fileid
blob lblb_tmp, lblb_total
string ls_filepath, ls_content
try
// 取得文件的长度
ll_filelen = FileLength ( ls_filepath )
// 打开文件并取得文件句柄
li_fileid = FileOpen (ls_filepath, StreamMode!, Read!, LockRead!)
// 成功打开文件
if li_fileid > 0 then
// 循环读取文件直至结束
do while ll_read < ll_filelen
// 读文件并记录位置
ll_read = ll_read + fileRead(li_fileId, lblb_tmp)
// 将文件碎片汇总
lblb_total = lblb_total + lblb_tmp
loop
// 此处将文件转换为string类型
ls_content = string(lblb_total, EncodingANSI!)
end if
catch(throwable ex)
// 异常处理
messagebox('Error', ex.text)
return -1
finally
// 最后关闭文件
fileClose(li_fileid)
end try
分享到:
相关推荐
比如在本例中,代码片段展示了如何将一个文件(如图像文件)读取到内存中的`BLOB`变量,并进一步将其存储到数据库中。 #### 文件读写的实现细节 在PB中,可以使用`FileOpen`函数打开文件,然后通过`FileRead`函数...
在本例中,`dll.exe`可能是用于测试或演示如何在PB9中使用`md.dll`的可执行文件,而`dll.pbl`、`dll.pbt`和`dll.pbw`则是与该DLL相关的PowerBuilder项目文件: - `dll.pbl`:这是PB9的库项目文件,包含了定义DLL...
在PowerBuilder(简称PB)开发中,处理大文件尤其是超过32KB大小的二进制文件时,经常会遇到一些挑战。这是因为PB默认对二进制数据的处理有一定的限制。本文将详细介绍如何在PB 10及以上版本中实现大文件的存储与...
##### 2.2 PB读写INI文件 在PowerBuilder(PB)中,可以通过内置的函数`ProfileString`和`SetProfileString`来读取和修改INI文件中的配置信息。 - **ProfileString**函数:用于从INI文件中读取指定节下的键值。其...
PB8支持生成可执行文件和网络部署,了解如何配置发布选项,打包应用程序,以及设置运行时环境,是将开发成果交付给用户的关键步骤。 7. 进阶主题: 随书光盘中的“pb8编程百例”可能包含数据库事务处理、多线程...
本资源“PB9.0实用编程100例随书光盘”提供了丰富的实践案例,帮助开发者深入理解和掌握PB9.0的编程技巧。 在学习PB9.0时,以下几个核心知识点至关重要: 1. **PowerScript语言**:PowerBuilder的主要编程语言,...
在本例中,参数文件包含关键字来标识特定的打印机,如“第二个打印机”。这种设计允许灵活的配置,无需修改代码就能改变打印机的选择。 3. **动态设置默认打印机**: PB通过调用API函数`SetDefaultPrinter`可以...
【标题】"PB实用100例(习题详解)"是针对PowerBuilder(PB)这一强大编程工具的一份详实的学习资料。PB,全称PowerBuilder,是Sybase公司开发的一种面向对象的快速应用开发工具(RAD),主要用于构建数据库应用程序...
- PB可以通过内置的文件操作函数访问本地文件系统,例如GetFile()用于选择文件,OpenFile()和ReadFile()用于读取文件内容。在本例中,201252314142978可能是图片文件的名称或一个包含了图片信息的数据文件。 8. ...
- **PB反编译精灵**:这是一款功能强大的PB反编译工具,支持多种版本的PB文件格式。 - **PowerBuilder Decompiler**:这款工具提供了图形界面,便于用户操作,并支持多种PB文件的反编译。 - **PBDecompiler**:这是...
在本例中,“API串口读写例程(pb11)”指的是使用PowerBuilder(PB)通过Windows API进行串行通信的一种实践方法。PowerBuilder是一种强大的开发工具,尤其在数据窗口和数据库交互方面表现出色,但它在处理特定低级...
5. 使用PB的数据窗口对象,设计和执行SQL查询,实现对SQLite数据库的读写操作。 在提供的`PBDemo_SQLite`压缩包中,可能包含了演示如何实现上述步骤的PowerBuilder项目或源代码文件。这些文件可以作为学习和参考的...
描述中提到的"pb json 示例 sailjson.sru 及调用方法"意味着这个压缩包包含了一个名为`sailjson.sru`的资源单元,它是PowerBuilder中的一个源代码文件,可能包含了处理JSON的函数和过程。同时,还有`demo.pbl`、`...
对于本例中的"pb2xls2sheet",这可能是一个工具或者脚本,用于将多个PB导出的Excel文件合并到一个单一的工作表中。如果这个工具是VBA宏,它可能会遍历指定目录下的所有Excel文件,逐个读取数据并插入到一个新工作表...
这一过程涉及到文件的读写操作,以及与数据库的交互,均需在PB中通过相应的函数和语句实现。 #### 数据库设计与管理 为了有效管理升级信息,需在数据库中创建一张名为`soft_fileinfo`的表,包含字段`version`...
《PB精彩编程案例--经典的小例子》是一份专注于PowerBuilder编程实践的资源集合,它包含了大量精心设计的小型示例程序,旨在帮助开发者深入理解和掌握PowerBuilder 9.0版本的特性和功能。PowerBuilder是一种强大的...
在本例中,我们看到`tree.pbl`和`tree.pbt`这两个文件。`.pbl`是PowerBuilder的库文件,它包含了各种对象如窗口、菜单、数据窗口等。`.pbt`则是项目的文件,它保存了整个应用程序的结构和设置。在这里,`tree.pbl`...
最近在学习tensorflow自带的量化工具的相关知识,其中遇到的一个问题是从tensorflow保存好的ckpt文件或者是保存后的.pb文件(这里的pb是把权重和模型保存在一起的pb文件)读取权重,查看量化后的权重是否变成整形。...
本教程将深入探讨如何利用STM32F103芯片制作一个USB闪存驱动器(U盘),并以PB375A模块为例,解析关键代码和实现步骤。 首先,我们需要了解STM32F103。这是意法半导体(STMicroelectronics)推出的基于ARM Cortex-...