1# @ohos.file.environment (目录环境能力) 2 3该模块提供环境目录能力,获取内存存储根目录、公共文件根目录的JS接口。 4 5> **说明:** 6> 7> - 本模块首批接口从API version 8开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 8> - 本模块接口为系统接口,三方应用不支持调用。 9 10## 导入模块 11 12```ts 13import environment from '@ohos.file.environment'; 14``` 15 16## environment.getStorageDataDir 17 18getStorageDataDir():Promise<string> 19 20异步方法获取内存存储根目录,以promise形式返回结果。 21 22**系统能力**:SystemCapability.FileManagement.File.Environment 23 24**返回值:** 25 26| 类型 | 说明 | 27| --------------------- | ---------------- | 28| Promise<string> | 返回存储根目录 | 29 30**错误码:** 31 32以下错误码的详细介绍请参见[文件管理子系统错误码](../errorcodes/errorcode-filemanagement.md)。 33| 错误码ID | 错误信息 | 34| ---------------------------- | ---------- | 35| 202 | The caller is not a system application | 36| 13900020 | Invalid argument | 37| 13900042 | Unknown error | 38 39**示例:** 40 41 ```ts 42 import { BusinessError } from '@ohos.base'; 43 environment.getStorageDataDir().then((path: string) => { 44 console.info("getStorageDataDir successfully, Path: " + path); 45 }).catch((err: BusinessError) => { 46 console.info("getStorageDataDir failed with error message: " + err.message + ", error code: " + err.code); 47 }); 48 ``` 49 50## environment.getStorageDataDir 51 52getStorageDataDir(callback:AsyncCallback<string>):void 53 54异步方法获取内存存储根目录,以callback形式返回结果。 55 56**系统能力**:SystemCapability.FileManagement.File.Environment 57 58**参数:** 59 60| 参数名 | 类型 | 必填 | 说明 | 61| -------- | --------------------------- | ---- | -------------------------------- | 62| callback | AsyncCallback<string> | 是 | 异步获取内存存储根目录之后的回调 | 63 64**错误码:** 65 66以下错误码的详细介绍请参见[文件管理子系统错误码](../errorcodes/errorcode-filemanagement.md)。 67| 错误码ID | 错误信息 | 68| ---------------------------- | ---------- | 69| 202 | The caller is not a system application | 70| 13900020 | Invalid argument | 71| 13900042 | Unknown error | 72 73**示例:** 74 75 ```ts 76 import { BusinessError } from '@ohos.base'; 77 environment.getStorageDataDir((err: BusinessError, path: string) => { 78 if (err) { 79 console.info("getStorageDataDir failed with error message: " + err.message + ", error code: " + err.code); 80 } else { 81 console.info("getStorageDataDir successfully, Path: " + path); 82 } 83 }); 84 ``` 85 86## environment.getUserDataDir 87 88getUserDataDir():Promise<string> 89 90异步方法获取公共文件根目录,以promise形式返回结果。 91 92**系统能力**:SystemCapability.FileManagement.File.Environment 93 94**返回值:** 95 96| 类型 | 说明 | 97| --------------------- | ------------------ | 98| Promise<string> | 返回公共文件根目录 | 99 100**错误码:** 101 102以下错误码的详细介绍请参见[文件管理子系统错误码](../errorcodes/errorcode-filemanagement.md)。 103| 错误码ID | 错误信息 | 104| ---------------------------- | ---------- | 105| 202 | The caller is not a system application | 106| 13900020 | Invalid argument | 107| 13900042 | Unknown error | 108 109**示例:** 110 111 ```ts 112 import { BusinessError } from '@ohos.base'; 113 environment.getUserDataDir().then((path: string) => { 114 console.info("getUserDataDir successfully, Path: " + path); 115 }).catch((err: BusinessError) => { 116 console.info("getUserDataDir failed with error message: " + err.message + ", error code: " + err.code); 117 }); 118 ``` 119 120## environment.getUserDataDir 121 122getUserDataDir(callback:AsyncCallback<string>): void 123 124异步方法获取公共文件根目录,以callback形式返回结果。 125 126**系统能力**:SystemCapability.FileManagement.File.Environment 127 128**参数:** 129 130| 参数名 | 类型 | 必填 | 说明 | 131| -------- | --------------------------- | ---- | -------------------------------- | 132| callback | AsyncCallback<string> | 是 | 异步获取公共文件根目录之后的回调 | 133 134**错误码:** 135 136以下错误码的详细介绍请参见[文件管理子系统错误码](../errorcodes/errorcode-filemanagement.md)。 137| 错误码ID | 错误信息 | 138| ---------------------------- | ---------- | 139| 202 | The caller is not a system application | 140| 13900020 | Invalid argument | 141| 13900042 | Unknown error | 142 143**示例:** 144 145 ```ts 146 import { BusinessError } from '@ohos.base'; 147 environment.getUserDataDir((err: BusinessError, path: string) => { 148 if (err) { 149 console.info("getUserDataDir failed with error message: " + err.message + ", error code: " + err.code); 150 } else { 151 console.info("getUserDataDir successfully, Path: " + path); 152 } 153 }); 154 ``` 155