1# Rawfile 2 3 4## 概述 5 6提供操作rawfile目录和rawfile文件的功能,包括遍历、打开、搜索、读取和关闭。 7 8**起始版本:** 8 9 10**起始版本:** 8 11 12 13## 汇总 14 15 16### 文件 17 18| 名称 | 描述 | 19| -------- | -------- | 20| [raw_dir.h](raw__dir_8h.md) | 提供rawfile目录相关功能 | 21| [raw_file.h](raw__file_8h.md) | 提供rawfile文件相关功能,包括搜索、读取和关闭。 | 22| [raw_file_manager.h](raw__file__manager_8h.md) | 提供资源管理rawfile相关功能,可以使用ResourceManager打开rawfile进行后续相关操作,包括搜索和读取等。 | 23 24 25### 结构体 26 27| 名称 | 描述 | 28| -------- | -------- | 29| [RawFileDescriptor](_raw_file_descriptor.md) | 提供rawfile文件描述符信息 | 30| [RawFileDescriptor64](_raw_file_descriptor64.md) | 提供rawfile文件描述符信息<br/>**说明**:RawFile64是新增接口,新接口支持打开更大的rawfile文件,性能更优 | 31 32 33### 类型定义 34 35| 名称 | 描述 | 36| -------- | -------- | 37| [RawDir](#rawdir) | 提供对rawfile目录的访问 | 38| [RawFile](#rawfile) | 提供对rawfile的访问功能 | 39| [RawFile64](#rawfile64) | 提供对rawfile的访问功能<br/>**说明**:RawFile64是新增接口,新接口支持打开更大的rawfile文件,性能更优 | 40| [NativeResourceManager](#nativeresourcemanager) | 代表native侧的ResourceManager | 41 42 43### 函数 44 45| 名称 | 描述 | 46| -------- | -------- | 47| [OH_ResourceManager_GetRawFileName](#oh_resourcemanager_getrawfilename) ([RawDir](#rawdir) \*rawDir, int index) | 通过索引获取rawfile文件名称 | 48| [OH_ResourceManager_GetRawFileCount](#oh_resourcemanager_getrawfilecount) ([RawDir](#rawdir) \*rawDir) | 获取[RawDir](#rawdir)中的rawfile数量 | 49| [OH_ResourceManager_CloseRawDir](#oh_resourcemanager_closerawdir) ([RawDir](#rawdir) \*rawDir) | 关闭已打开的[RawDir](#rawdir)并释放所有相关联资源 | 50| [OH_ResourceManager_ReadRawFile](#oh_resourcemanager_readrawfile) (const [RawFile](#rawfile) \*rawFile, void \*buf, size_t length) | 读取rawfile内容,从当前位置读取指定长度的数据 | 51| [OH_ResourceManager_SeekRawFile](#oh_resourcemanager_seekrawfile) (const [RawFile](#rawfile) \*rawFile, long offset, int whence) | 基于指定的偏移量,在rawfile文件内搜索读写数据的位置,单位为long | 52| [OH_ResourceManager_GetRawFileSize](#oh_resourcemanager_getrawfilesize) ([RawFile](#rawfile) \*rawFile) | 获取rawfile长度,单位为long | 53| [OH_ResourceManager_GetRawFileRemainingLength](#oh_resourcemanager_getrawfileremaininglength) (const [RawFile](#rawfile) \*rawFile) | 获取rawfile的剩余长度,单位为long | 54| [OH_ResourceManager_CloseRawFile](#oh_resourcemanager_closerawfile) ([RawFile](#rawfile) \*rawFile) | 关闭已打开的[RawFile](#rawfile) 以及释放所有相关联的资源 | 55| [OH_ResourceManager_GetRawFileOffset](#oh_resourcemanager_getrawfileoffset) (const [RawFile](#rawfile) \*rawFile) | 获取rawfile当前的偏移量,单位为long | 56| [OH_ResourceManager_GetRawFileDescriptor](#oh_resourcemanager_getrawfiledescriptor) (const [RawFile](#rawfile) \*rawFile, [RawFileDescriptor](_raw_file_descriptor.md) &descriptor) | 基于偏移量和文件长度打开rawfile,并获取rawfile文件描述符 | 57| [OH_ResourceManager_ReleaseRawFileDescriptor](#oh_resourcemanager_releaserawfiledescriptor) (const [RawFileDescriptor](_raw_file_descriptor.md) &descriptor) | 关闭rawfile文件描述符 | 58| [OH_ResourceManager_ReadRawFile64](#oh_resourcemanager_readrawfile64) (const [RawFile64](#rawfile64) \*rawFile, void \*buf, int64_t length) | 读取rawfile文件内容,从当前位置读取指定长度的数据<br/>**说明**:RawFile64是新增接口,新接口支持打开更大的rawfile文件,性能更优 | 59| [OH_ResourceManager_SeekRawFile64](#oh_resourcemanager_seekrawfile64) (const [RawFile64](#rawfile64) \*rawFile, int64_t offset, int whence) | 基于指定的偏移量,在rawfile文件内搜索读写数据的位置,单位为int64_t | 60| [OH_ResourceManager_GetRawFileSize64](#oh_resourcemanager_getrawfilesize64) ([RawFile64](#rawfile64) \*rawFile) | 获取较大rawfile文件的长度,单位为int64_t | 61| [OH_ResourceManager_GetRawFileRemainingLength64](#oh_resourcemanager_getrawfileremaininglength64) (const [RawFile64](#rawfile64) \*rawFile) | 获取较大rawfile的剩余长度,单位为int64_t | 62| [OH_ResourceManager_CloseRawFile64](#oh_resourcemanager_closerawfile64) ([RawFile64](#rawfile64) \*rawFile) | 关闭已打开的[RawFile64](#rawfile64) 以及释放所有相关联的资源 | 63| [OH_ResourceManager_GetRawFileOffset64](#oh_resourcemanager_getrawfileoffset64) (const [RawFile64](#rawfile64) \*rawFile) | 获取rawfile文件的偏移量,单位为int64_t | 64| [OH_ResourceManager_GetRawFileDescriptor64](#oh_resourcemanager_getrawfiledescriptor64) (const [RawFile64](#rawfile64) \*rawFile, [RawFileDescriptor64](_raw_file_descriptor64.md) \*descriptor) | 基于偏移量和文件长度打开较大的rawfile,并获取rawfile文件描述符 | 65| [OH_ResourceManager_ReleaseRawFileDescriptor64](#oh_resourcemanager_releaserawfiledescriptor64) (const [RawFileDescriptor64](_raw_file_descriptor64.md) \*descriptor) | 关闭rawfile文件描述符 | 66| [OH_ResourceManager_InitNativeResourceManager](#oh_resourcemanager_initnativeresourcemanager) (napi_env env, napi_value jsResMgr) | 基于JavaScipt侧的ResourceManager获取native侧的ResourceManager,用来完成rawfile相关功能 | 67| [OH_ResourceManager_ReleaseNativeResourceManager](#oh_resourcemanager_releasenativeresourcemanager) ([NativeResourceManager](#nativeresourcemanager) \*resMgr) | 释放native侧ResourceManager | 68| [OH_ResourceManager_OpenRawDir](#oh_resourcemanager_openrawdir) (const [NativeResourceManager](#nativeresourcemanager) \*mgr, const char \*dirName) | 打开rawfile目录,打开后可以遍历对应目录下的rawfile文件 | 69| [OH_ResourceManager_OpenRawFile](#oh_resourcemanager_openrawfile) (const [NativeResourceManager](#nativeresourcemanager) \*mgr, const char \*fileName) | 打开rawfile文件,读取文件数据 | 70| [OH_ResourceManager_OpenRawFile64](#oh_resourcemanager_openrawfile64) (const [NativeResourceManager](#nativeresourcemanager) \*mgr, const char \*fileName) | 打开较大的rawfile文件,读取文件数据 | 71 72 73## 类型定义说明 74 75 76### NativeResourceManager 77 78``` 79typedef struct NativeResourceManagerNativeResourceManager 80``` 81 82**描述** 83 84代表native侧的ResourceManager 85 86此类封装了JavaScript resource manager的native实现 **ResourceManager**指针可以通过调用[OH_ResourceManager_InitNativeResourceManager](#oh_resourcemanager_initnativeresourcemanager)方法获取 87 88**起始版本:** 8 89 90 91### RawDir 92 93``` 94typedef struct RawDirRawDir 95``` 96 97**描述** 98 99提供对rawfile目录的访问 100 101**起始版本:** 8 102 103 104### RawFile 105 106``` 107typedef struct RawFileRawFile 108``` 109 110**描述** 111 112提供对rawfile的访问功能 113 114**起始版本:** 8 115 116 117### RawFile64 118 119``` 120typedef struct RawFile64RawFile64 121``` 122 123**描述** 124 125针对64位设备,提供对rawfile的访问功能 126 127**起始版本:** 11 128 129 130## 函数说明 131 132 133### OH_ResourceManager_CloseRawDir() 134 135``` 136void OH_ResourceManager_CloseRawDir (RawDir * rawDir) 137``` 138 139**描述** 140 141关闭已打开的[RawDir](#rawdir)并释放所有相关联资源 142 143**起始版本:** 8 144 145**参数:** 146 147| 名称 | 描述 | 148| -------- | -------- | 149| rawDir | 表示指向[RawDir](#rawdir)的指针 | 150 151**参见:** 152 153[OH_ResourceManager_OpenRawDir](#oh_resourcemanager_openrawdir) 154 155 156### OH_ResourceManager_CloseRawFile() 157 158``` 159void OH_ResourceManager_CloseRawFile (RawFile * rawFile) 160``` 161 162**描述** 163 164关闭已打开的[RawFile](#rawfile) 以及释放所有相关联的资源 165 166**起始版本:** 8 167 168**参数:** 169 170| 名称 | 描述 | 171| -------- | -------- | 172| rawFile | 表示指向[RawFile](#rawfile)的指针 | 173 174**参见:** 175 176[OH_ResourceManager_OpenRawFile](#oh_resourcemanager_openrawfile) 177 178 179### OH_ResourceManager_CloseRawFile64() 180 181``` 182void OH_ResourceManager_CloseRawFile64 (RawFile64 * rawFile) 183``` 184 185**描述** 186 187关闭已打开的[RawFile64](#rawfile64) 以及释放所有相关联的资源 188 189**起始版本:** 11 190 191**参数:** 192 193| 名称 | 描述 | 194| -------- | -------- | 195| rawFile | 表示指向[RawFile64](#rawfile64)的指针 | 196 197**参见:** 198 199[OH_ResourceManager_OpenRawFile64](#oh_resourcemanager_openrawfile64) 200 201 202### OH_ResourceManager_GetRawFileCount() 203 204``` 205int OH_ResourceManager_GetRawFileCount (RawDir * rawDir) 206``` 207 208**描述** 209 210获取[RawDir](#rawdir)中的rawfile数量 211 212通过此方法可以获取[OH_ResourceManager_GetRawFileName](#oh_resourcemanager_getrawfilename)中可用的索引 213 214**起始版本:** 8 215 216**参数:** 217 218| 名称 | 描述 | 219| -------- | -------- | 220| rawDir | 表示指向[RawDir](#rawdir)的指针 | 221 222**参见:** 223 224[OH_ResourceManager_GetRawFileName](#oh_resourcemanager_getrawfilename) 225 226 227### OH_ResourceManager_GetRawFileDescriptor() 228 229``` 230bool OH_ResourceManager_GetRawFileDescriptor (const RawFile * rawFile, RawFileDescriptor & descriptor ) 231``` 232 233**描述** 234 235基于偏移量(单位为long)和文件长度(单位为long)打开rawfile,并获取rawfile文件描述符 236 237打开的文件描述符被用于读取rawfile 238 239**起始版本:** 8 240 241**参数:** 242 243| 名称 | 描述 | 244| -------- | -------- | 245| rawFile | 表示指向[RawFile](#rawfile)的指针 | 246| descriptor | 显示rawfile文件描述符,以及在HAP包中的起始位置和长度 | 247 248**返回:** 249 250返回true表示打开rawfile文件描述符成功,返回false表示rawfile不允许被访问 251 252 253### OH_ResourceManager_GetRawFileDescriptor64() 254 255``` 256bool OH_ResourceManager_GetRawFileDescriptor64 (const RawFile64 * rawFile, RawFileDescriptor64 * descriptor ) 257``` 258 259**描述** 260 261基于偏移量(单位为int64_t)和文件长度(单位为int64_t)打开较大的rawfile,并获取e文件描述符 262 263打开的文件描述符被用于读取rawfile 264 265**起始版本:** 11 266 267**参数:** 268 269| 名称 | 描述 | 270| -------- | -------- | 271| rawFile | 表示指向[RawFile64](#rawfile64)的指针 | 272| 显示rawfile文件描述符,以及在HAP包中的起始位置和长度 | | 273 274**返回:** 275 276返回true表示打开rawfile文件描述符成功,返回false表示rawfile不允许被访问 277 278 279### OH_ResourceManager_GetRawFileName() 280 281``` 282const char* OH_ResourceManager_GetRawFileName (RawDir * rawDir, int index ) 283``` 284 285**描述** 286 287通过索引获取rawfile文件名称 288 289可以使用此方法遍历rawfile目录 290 291**起始版本:** 8 292 293**参数:** 294 295| 名称 | 描述 | 296| -------- | -------- | 297| rawDir | 表示指向[RawDir](#rawdir)的指针 | 298| index | 表示文件在[RawDir](#rawdir)中的索引位置 | 299 300**返回:** 301 302通过索引返回文件名称,此返回值可以作为[OH_ResourceManager_OpenRawFile](#oh_resourcemanager_openrawfile)的输入参数, 如果遍历完所有文件仍未找到,则返回**NULL** 303 304**参见:** 305 306[OH_ResourceManager_OpenRawFile](#oh_resourcemanager_openrawfile) 307 308 309### OH_ResourceManager_GetRawFileOffset() 310 311``` 312long OH_ResourceManager_GetRawFileOffset (const RawFile * rawFile) 313``` 314 315**描述** 316 317获取rawfile当前的偏移量,单位为long 318 319rawfile当前的偏移量 320 321**起始版本:** 8 322 323**参数:** 324 325| 名称 | 描述 | 326| -------- | -------- | 327| rawFile | 表示指向[RawFile](#rawfile)的指针 | 328 329**返回:** 330 331返回rawfile当前的偏移量 332 333 334### OH_ResourceManager_GetRawFileOffset64() 335 336``` 337int64_t OH_ResourceManager_GetRawFileOffset64 (const RawFile64 * rawFile) 338``` 339 340**描述** 341 342获取较大rawfile文件的偏移量,单位为int64_t 343 344**起始版本:** 11 345 346**参数:** 347 348| 名称 | 描述 | 349| -------- | -------- | 350| rawFile | 表示指向[RawFile64](#rawfile64)的指针 | 351 352**返回:** 353 354返回rawfile当前的偏移量 355 356 357### OH_ResourceManager_GetRawFileRemainingLength() 358 359``` 360long OH_ResourceManager_GetRawFileRemainingLength (const RawFile * rawFile) 361``` 362 363**描述** 364 365获取rawfile的剩余长度,单位为long 366 367**起始版本:** 11 368 369**参数:** 370 371| 名称 | 描述 | 372| -------- | -------- | 373| rawFile | 表示指向[RawFile](#rawfile)的指针 | 374 375**返回:** 376 377返回rawfile的剩余长度 378 379 380### OH_ResourceManager_GetRawFileRemainingLength64() 381 382``` 383int64_t OH_ResourceManager_GetRawFileRemainingLength64 (const RawFile64 * rawFile) 384``` 385 386**描述** 387 388获取较大rawfile的剩余长度,单位为int64_t. 389 390**起始版本:** 11 391 392**参数:** 393 394| 名称 | 描述 | 395| -------- | -------- | 396| rawFile | 表示指向[RawFile64](#rawfile64)的指针 | 397 398**返回:** 399 400返回rawfile的剩余长度 401 402 403### OH_ResourceManager_GetRawFileSize() 404 405``` 406long OH_ResourceManager_GetRawFileSize (RawFile * rawFile) 407``` 408 409**描述** 410 411获取rawfile长度,单位为long 412 413**起始版本:** 8 414 415**参数:** 416 417| 名称 | 描述 | 418| -------- | -------- | 419| rawFile | 表示指向[RawFile](#rawfile)的指针 | 420 421**返回:** 422 423返回rawfile的整体长度 424 425 426### OH_ResourceManager_GetRawFileSize64() 427 428``` 429int64_t OH_ResourceManager_GetRawFileSize64 (RawFile64 * rawFile) 430``` 431 432**描述** 433 434获取较大rawfile文件的长度,单位为int64_t 435 436**起始版本:** 11 437 438**参数:** 439 440| 名称 | 描述 | 441| -------- | -------- | 442| rawFile | 表示指向[RawFile64](#rawfile64)的指针 | 443 444**返回:** 445 446返回rawfile的整体长度 447 448 449### OH_ResourceManager_InitNativeResourceManager() 450 451``` 452NativeResourceManager* OH_ResourceManager_InitNativeResourceManager (napi_env env, napi_value jsResMgr ) 453``` 454 455**描述** 456 457基于JavaScipt侧的ResourceManager获取native侧的ResourceManager,用来完成rawfile相关功能 458 459**起始版本:** 8 460 461**参数:** 462 463| 名称 | 描述 | 464| -------- | -------- | 465| env | 表示JavaScipt Native Interface (napi)环境指针 | 466| jsResMgr | 表示JavaScipt resource manager | 467 468**返回:** 469 470返回[NativeResourceManager](#nativeresourcemanager)指针 471 472 473### OH_ResourceManager_OpenRawDir() 474 475``` 476RawDir* OH_ResourceManager_OpenRawDir (const NativeResourceManager * mgr, const char * dirName ) 477``` 478 479**描述** 480 481打开rawfile目录,打开后可以遍历对应目录下的rawfile文件 482 483**起始版本:** 8 484 485**参数:** 486 487| 名称 | 描述 | 488| -------- | -------- | 489| mgr | 表示指向[NativeResourceManager](#nativeresourcemanager)的指针,此指针是通过调用 [OH_ResourceManager_InitNativeResourceManager](#oh_resourcemanager_initnativeresourcemanager)方法获取的 | 490| dirName | 表示要打开的rawfile目录名称,当传递一个空字符串时表示打开rawfile根目录 | 491 492**返回:** 493 494返回[RawDir](#rawdir)指针。使用完此指针后,调用[OH_ResourceManager_CloseRawDir](#oh_resourcemanager_closerawdir)释放。 495 496**参见:** 497 498[OH_ResourceManager_InitNativeResourceManager](#oh_resourcemanager_initnativeresourcemanager) 499 500[OH_ResourceManager_CloseRawDir](#oh_resourcemanager_closerawdir) 501 502 503### OH_ResourceManager_OpenRawFile() 504 505``` 506RawFile* OH_ResourceManager_OpenRawFile (const NativeResourceManager * mgr, const char * fileName ) 507``` 508 509**描述** 510 511打开rawfile文件,打开后可以读取它的数据 512 513**起始版本:** 8 514 515**参数:** 516 517| 名称 | 描述 | 518| -------- | -------- | 519| mgr | 表示指向[NativeResourceManager](#nativeresourcemanager)的指针,此指针通过调用[OH_ResourceManager_InitNativeResourceManager](#oh_resourcemanager_initnativeresourcemanager)方法获取 | 520| fileName | 表示基于rawfile根目录的相对路径下的文件名称 | 521 522**返回:** 523 524返回[RawFile](#rawfile)指针。当使用完此指针,调用[OH_ResourceManager_CloseRawFile](#oh_resourcemanager_closerawfile)释放。 525 526**参见:** 527 528[OH_ResourceManager_InitNativeResourceManager](#oh_resourcemanager_initnativeresourcemanager) 529 530[OH_ResourceManager_CloseRawFile](#oh_resourcemanager_closerawfile) 531 532 533### OH_ResourceManager_OpenRawFile64() 534 535``` 536RawFile64* OH_ResourceManager_OpenRawFile64 (const NativeResourceManager * mgr, const char * fileName ) 537``` 538 539**描述** 540 541打开较大的rawfile文件,打开后可以读取它的数据 542 543**起始版本:** 11 544 545**参数:** 546 547| 名称 | 描述 | 548| -------- | -------- | 549| mgr | 表示指向[NativeResourceManager](#nativeresourcemanager)的指针,此指针通过调用[OH_ResourceManager_InitNativeResourceManager](#oh_resourcemanager_initnativeresourcemanager)方法获取 | 550| fileName | 表示基于rawfile根目录的相对路径下的文件名称 | 551 552**返回:** 553 554返回[RawFile64](#rawfile64)指针。当使用完此指针,调用[OH_ResourceManager_CloseRawFile64](#oh_resourcemanager_closerawfile64)释放。 555 556**参见:** 557 558[OH_ResourceManager_InitNativeResourceManager](#oh_resourcemanager_initnativeresourcemanager) 559 560[OH_ResourceManager_CloseRawFile64](#oh_resourcemanager_closerawfile64) 561 562 563### OH_ResourceManager_ReadRawFile() 564 565``` 566int OH_ResourceManager_ReadRawFile (const RawFile * rawFile, void * buf, size_t length ) 567``` 568 569**描述** 570 571读取rawfile内容,从当前位置读取指定长度的数据 572 573**起始版本:** 8 574 575**参数:** 576 577| 名称 | 描述 | 578| -------- | -------- | 579| rawFile | 表示指向[RawFile](#rawfile)的指针 | 580| buf | 用于接收读取数据的缓冲区指针 | 581| length | 读取数据的字节长度 | 582 583**返回:** 584 585返回读取的字节数,如果读取长度超过文件末尾长度,则返回**0** 586 587 588### OH_ResourceManager_ReadRawFile64() 589 590``` 591int64_t OH_ResourceManager_ReadRawFile64 (const RawFile64 * rawFile, void * buf, int64_t length ) 592``` 593 594**描述** 595 596读取较大的rawfile文件内容,从当前位置读取**指定长度**的数据 597 598**起始版本:** 11 599 600**参数:** 601 602| 名称 | 描述 | 603| -------- | -------- | 604| rawFile | 表示指向[RawFile64](#rawfile64)的指针 | 605| buf | 用于接收读取数据的缓冲区指针 | 606| length | 读取数据的字节长度 | 607 608**返回:** 609 610返回读取的字节数,如果读取长度超过文件末尾长度,则返回**0** 611 612 613### OH_ResourceManager_ReleaseNativeResourceManager() 614 615``` 616void OH_ResourceManager_ReleaseNativeResourceManager (NativeResourceManager * resMgr) 617``` 618 619**描述** 620 621释放native侧ResourceManager 622 623**起始版本:** 8 624 625**参数:** 626 627| 名称 | 描述 | 628| -------- | -------- | 629| resMgr | 表示[NativeResourceManager](#nativeresourcemanager)指针 | 630 631 632### OH_ResourceManager_ReleaseRawFileDescriptor() 633 634``` 635bool OH_ResourceManager_ReleaseRawFileDescriptor (const RawFileDescriptor & descriptor) 636``` 637 638**描述** 639 640关闭rawfile文件描述符 641 642已打开的文件描述符在使用完以后必须释放,防止文件描述符泄露 643 644**起始版本:** 8 645 646**参数:** 647 648| 名称 | 描述 | 649| -------- | -------- | 650| descriptor | 包含rawfile文件描述符,以及在HAP包中的起始位置和长度 | 651 652**返回:** 653 654返回true表示关闭文件描述符成功,返回false表示关闭文件描述符失败 655 656 657### OH_ResourceManager_ReleaseRawFileDescriptor64() 658 659``` 660bool OH_ResourceManager_ReleaseRawFileDescriptor64 (const RawFileDescriptor64 * descriptor) 661``` 662 663**描述** 664 665关闭rawfile文件描述符 666 667已打开的文件描述符在使用完以后必须释放,防止文件描述符泄露 668 669**起始版本:** 11 670 671**参数:** 672 673| 名称 | 描述 | 674| -------- | -------- | 675| descriptor | 包含rawfile文件描述符,以及在HAP包中的起始位置和长度 | 676 677**返回:** 678 679返回true表示关闭文件描述符成功,返回false表示关闭文件描述符失败 680 681 682### OH_ResourceManager_SeekRawFile() 683 684``` 685int OH_ResourceManager_SeekRawFile (const RawFile * rawFile, long offset, int whence ) 686``` 687 688**描述** 689 690基于指定的偏移量,在rawfile文件内搜索读写数据的位置 691 692**起始版本:** 8 693 694**参数:** 695 696| 名称 | 描述 | 697| -------- | -------- | 698| rawFile | 表示指向[RawFile](#rawfile)的指针 | 699| offset | 表示指定的偏移量 | 700| whence | 读写位置,有以下场景:<br/>**0**: 读写位置为文件起始位置加上**offset**<br/>**1**: 读写位置为当前位置加上**offset**<br/>**2**: 读写位置为文件末尾加上**offset** | 701 702**返回:** 703 704如果搜索成功返回<b>(int) 0,如果发生错误返回 **(int) -1** 705 706 707### OH_ResourceManager_SeekRawFile64() 708 709``` 710int OH_ResourceManager_SeekRawFile64 (const RawFile64 * rawFile, int64_t offset, int whence ) 711``` 712 713**描述** 714 715基于指定的偏移量,在较大的rawfile文件内搜索读写数据的位置 716 717**起始版本:** 11 718 719**参数:** 720 721| 名称 | 描述 | 722| -------- | -------- | 723| rawFile | 表示指向[RawFile64](#rawfile64)的指针 | 724| offset | 表示指定的偏移量 | 725| whence | 读写位置,有以下场景:<br/>**0**: 读写位置为文件起始位置加上**offset**<br/>**1**: 读写位置为当前位置加上**offset**<br/>**2**: 读写位置为文件末尾加上**offset** | 726 727**返回:** 728 729如果搜索成功返回 **(int) 0**,如果发生错误返回 **(int) -1** occurs. 730