1e41f4b71Sopenharmony_ci# @ohos.statfs (statfs) 2e41f4b71Sopenharmony_ci 3e41f4b71Sopenharmony_ci该模块提供文件系统相关存储信息的功能,向应用程序提供获取文件系统总字节数、空闲字节数的JS接口。 4e41f4b71Sopenharmony_ci 5e41f4b71Sopenharmony_ci> **说明:** 6e41f4b71Sopenharmony_ci> 7e41f4b71Sopenharmony_ci> - 本模块首批接口从API version 8开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 8e41f4b71Sopenharmony_ci> - 本模块从API version 9开始废弃,建议使用[@ohos.file.statvfs](js-apis-file-statvfs.md)替代。 9e41f4b71Sopenharmony_ci 10e41f4b71Sopenharmony_ci## 导入模块 11e41f4b71Sopenharmony_ci 12e41f4b71Sopenharmony_ci```ts 13e41f4b71Sopenharmony_ciimport statfs from '@ohos.statfs'; 14e41f4b71Sopenharmony_ci``` 15e41f4b71Sopenharmony_ci 16e41f4b71Sopenharmony_ci## statfs.getFreeBytes 17e41f4b71Sopenharmony_ci 18e41f4b71Sopenharmony_cigetFreeBytes(path:string):Promise<number> 19e41f4b71Sopenharmony_ci 20e41f4b71Sopenharmony_ci异步方法获取指定文件系统空闲字节数,以Promise形式返回结果。 21e41f4b71Sopenharmony_ci 22e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.FileManagement.File.FileIO 23e41f4b71Sopenharmony_ci 24e41f4b71Sopenharmony_ci**参数:** 25e41f4b71Sopenharmony_ci 26e41f4b71Sopenharmony_ci | 参数名 | 类型 | 必填 | 说明 | 27e41f4b71Sopenharmony_ci | ------ | ------ | ---- | ---------------------------- | 28e41f4b71Sopenharmony_ci | path | string | 是 | 需要查询的文件系统的文件路径 | 29e41f4b71Sopenharmony_ci 30e41f4b71Sopenharmony_ci**返回值:** 31e41f4b71Sopenharmony_ci 32e41f4b71Sopenharmony_ci | 类型 | 说明 | 33e41f4b71Sopenharmony_ci | --------------------- | -------------- | 34e41f4b71Sopenharmony_ci | Promise<number> | 返回空闲字节数 | 35e41f4b71Sopenharmony_ci 36e41f4b71Sopenharmony_ci**示例:** 37e41f4b71Sopenharmony_ci 38e41f4b71Sopenharmony_ci ```ts 39e41f4b71Sopenharmony_ci import { BusinessError } from '@ohos.base'; 40e41f4b71Sopenharmony_ci let path = "/dev"; 41e41f4b71Sopenharmony_ci statfs.getFreeBytes(path).then((number: number) => { 42e41f4b71Sopenharmony_ci console.info("getFreeBytes promise successfully:" + number); 43e41f4b71Sopenharmony_ci }).catch((err: BusinessError) => { 44e41f4b71Sopenharmony_ci console.error("getFreeBytes failed with error:" + JSON.stringify(err)); 45e41f4b71Sopenharmony_ci }); 46e41f4b71Sopenharmony_ci ``` 47e41f4b71Sopenharmony_ci 48e41f4b71Sopenharmony_ci## statfs.getFreeBytes 49e41f4b71Sopenharmony_ci 50e41f4b71Sopenharmony_cigetFreeBytes(path:string, callback:AsyncCallback<number>): void 51e41f4b71Sopenharmony_ci 52e41f4b71Sopenharmony_ci异步方法获取指定文件系统空闲字节数,使用callback形式返回结果。 53e41f4b71Sopenharmony_ci 54e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.FileManagement.File.FileIO 55e41f4b71Sopenharmony_ci 56e41f4b71Sopenharmony_ci**参数:** 57e41f4b71Sopenharmony_ci 58e41f4b71Sopenharmony_ci | 参数名 | 类型 | 必填 | 说明 | 59e41f4b71Sopenharmony_ci | -------- | --------------------------- | ---- | ---------------------------- | 60e41f4b71Sopenharmony_ci | path | string | 是 | 需要查询的文件系统的文件路径 | 61e41f4b71Sopenharmony_ci | callback | AsyncCallback<number> | 是 | 异步获取空闲字节数之后的回调 | 62e41f4b71Sopenharmony_ci 63e41f4b71Sopenharmony_ci**示例:** 64e41f4b71Sopenharmony_ci 65e41f4b71Sopenharmony_ci ```ts 66e41f4b71Sopenharmony_ci import common from '@ohos.app.ability.common'; 67e41f4b71Sopenharmony_ci import { BusinessError } from '@ohos.base'; 68e41f4b71Sopenharmony_ci let context = getContext(this) as common.UIAbilityContext; 69e41f4b71Sopenharmony_ci let path = context.filesDir; 70e41f4b71Sopenharmony_ci statfs.getFreeBytes(path, (err: BusinessError, freeBytes:Number) => { 71e41f4b71Sopenharmony_ci if (err) { 72e41f4b71Sopenharmony_ci console.error('getFreeBytes callback failed'); 73e41f4b71Sopenharmony_ci } else { 74e41f4b71Sopenharmony_ci console.info('getFreeBytes callback success' + freeBytes); 75e41f4b71Sopenharmony_ci } 76e41f4b71Sopenharmony_ci }); 77e41f4b71Sopenharmony_ci ``` 78e41f4b71Sopenharmony_ci 79e41f4b71Sopenharmony_ci## statfs.getTotalBytes 80e41f4b71Sopenharmony_ci 81e41f4b71Sopenharmony_cigetTotalBytes(path: string): Promise<number> 82e41f4b71Sopenharmony_ci 83e41f4b71Sopenharmony_ci异步方法获取指定文件系统总字节数,以Promise形式返回结果。 84e41f4b71Sopenharmony_ci 85e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.FileManagement.File.FileIO 86e41f4b71Sopenharmony_ci 87e41f4b71Sopenharmony_ci**参数:** 88e41f4b71Sopenharmony_ci 89e41f4b71Sopenharmony_ci | 参数名 | 类型 | 必填 | 说明 | 90e41f4b71Sopenharmony_ci | ---- | ------ | ---- | ---------------------------- | 91e41f4b71Sopenharmony_ci | path | string | 是 | 需要查询的文件系统的文件路径 | 92e41f4b71Sopenharmony_ci 93e41f4b71Sopenharmony_ci**返回值:** 94e41f4b71Sopenharmony_ci 95e41f4b71Sopenharmony_ci | 类型 | 说明 | 96e41f4b71Sopenharmony_ci | --------------------- | ------------ | 97e41f4b71Sopenharmony_ci | Promise<number> | 返回总字节数 | 98e41f4b71Sopenharmony_ci 99e41f4b71Sopenharmony_ci**示例:** 100e41f4b71Sopenharmony_ci 101e41f4b71Sopenharmony_ci ```ts 102e41f4b71Sopenharmony_ci import { BusinessError } from '@ohos.base'; 103e41f4b71Sopenharmony_ci let path = "/dev"; 104e41f4b71Sopenharmony_ci statfs.getTotalBytes(path).then((number: number) => { 105e41f4b71Sopenharmony_ci console.info("getTotalBytes promise successfully:" + number); 106e41f4b71Sopenharmony_ci }).catch((err: BusinessError) => { 107e41f4b71Sopenharmony_ci console.error("getTotalBytes failed with error:" + JSON.stringify(err)); 108e41f4b71Sopenharmony_ci }); 109e41f4b71Sopenharmony_ci ``` 110e41f4b71Sopenharmony_ci 111e41f4b71Sopenharmony_ci## statfs.getTotalBytes 112e41f4b71Sopenharmony_ci 113e41f4b71Sopenharmony_cigetTotalBytes(path: string, callback: AsyncCallback<number>): void 114e41f4b71Sopenharmony_ci 115e41f4b71Sopenharmony_ci异步方法获取指定文件系统总字节数,使用callback形式返回结果。 116e41f4b71Sopenharmony_ci 117e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.FileManagement.File.FileIO 118e41f4b71Sopenharmony_ci 119e41f4b71Sopenharmony_ci**参数:** 120e41f4b71Sopenharmony_ci 121e41f4b71Sopenharmony_ci | 参数名 | 类型 | 必填 | 说明 | 122e41f4b71Sopenharmony_ci | -------- | --------------------------- | ---- | ---------------------------- | 123e41f4b71Sopenharmony_ci | path | string | 是 | 需要查询的文件系统的文件路径 | 124e41f4b71Sopenharmony_ci | callback | AsyncCallback<number> | 是 | 异步获取总字节数之后的回调 | 125e41f4b71Sopenharmony_ci 126e41f4b71Sopenharmony_ci**示例:** 127e41f4b71Sopenharmony_ci 128e41f4b71Sopenharmony_ci ```ts 129e41f4b71Sopenharmony_ci import common from '@ohos.app.ability.common'; 130e41f4b71Sopenharmony_ci import { BusinessError } from '@ohos.base'; 131e41f4b71Sopenharmony_ci let context = getContext(this) as common.UIAbilityContext; 132e41f4b71Sopenharmony_ci let path = context.filesDir; 133e41f4b71Sopenharmony_ci statfs.getTotalBytes(path, (err: BusinessError, totalBytes:Number) => { 134e41f4b71Sopenharmony_ci if (err) { 135e41f4b71Sopenharmony_ci console.error('getTotalBytes callback failed'); 136e41f4b71Sopenharmony_ci } else { 137e41f4b71Sopenharmony_ci console.info('getTotalBytes callback success' + totalBytes); 138e41f4b71Sopenharmony_ci } 139e41f4b71Sopenharmony_ci }); 140e41f4b71Sopenharmony_ci ``` 141e41f4b71Sopenharmony_ci 142