1e41f4b71Sopenharmony_ci# Environment 2e41f4b71Sopenharmony_ci 3e41f4b71Sopenharmony_ci 4e41f4b71Sopenharmony_ci## Overview 5e41f4b71Sopenharmony_ci 6e41f4b71Sopenharmony_ciProvides the capability of obtaining the root directory of user files. 7e41f4b71Sopenharmony_ci 8e41f4b71Sopenharmony_ci**Since**: 12 9e41f4b71Sopenharmony_ci 10e41f4b71Sopenharmony_ci 11e41f4b71Sopenharmony_ci## Summary 12e41f4b71Sopenharmony_ci 13e41f4b71Sopenharmony_ci 14e41f4b71Sopenharmony_ci### Files 15e41f4b71Sopenharmony_ci 16e41f4b71Sopenharmony_ci| Name| Description| 17e41f4b71Sopenharmony_ci| -------- | -------- | 18e41f4b71Sopenharmony_ci| [oh_environment.h](oh__environment_8h.md) | Defines the native APIs used to obtain the sandbox paths of the user files. | 19e41f4b71Sopenharmony_ci 20e41f4b71Sopenharmony_ci 21e41f4b71Sopenharmony_ci### Functions 22e41f4b71Sopenharmony_ci 23e41f4b71Sopenharmony_ci| Name| Description| 24e41f4b71Sopenharmony_ci| -------- | -------- | 25e41f4b71Sopenharmony_ci| [FileManagement_ErrCode](_file_i_o.md#filemanagement_errcode) [OH_Environment_GetUserDownloadDir](#oh_environment_getuserdownloaddir) (char \*\*result) | Obtains the sandbox path of the **Download** root directory. This function is available only for 2-in-1 devices.| 26e41f4b71Sopenharmony_ci| [FileManagement_ErrCode](_file_i_o.md#filemanagement_errcode) [OH_Environment_GetUserDesktopDir](#oh_environment_getuserdesktopdir) (char \*\*result) | Obtains the sandbox path of the **Desktop** root directory. This function is available only for 2-in-1 devices.| 27e41f4b71Sopenharmony_ci| [FileManagement_ErrCode](_file_i_o.md#filemanagement_errcode) [OH_Environment_GetUserDocumentDir](#oh_environment_getuserdocumentdir) (char \*\*result) | Obtains the sandbox path of the **Documents** root directory. This function is available only for 2-in-1 devices.| 28e41f4b71Sopenharmony_ci 29e41f4b71Sopenharmony_ci 30e41f4b71Sopenharmony_ci## Function Description 31e41f4b71Sopenharmony_ci 32e41f4b71Sopenharmony_ci 33e41f4b71Sopenharmony_ci### OH_Environment_GetUserDesktopDir() 34e41f4b71Sopenharmony_ci 35e41f4b71Sopenharmony_ci``` 36e41f4b71Sopenharmony_ciFileManagement_ErrCode OH_Environment_GetUserDesktopDir (char ** result) 37e41f4b71Sopenharmony_ci``` 38e41f4b71Sopenharmony_ci**Description** 39e41f4b71Sopenharmony_ciObtains the sandbox path of the **Desktop** root directory. 40e41f4b71Sopenharmony_ci 41e41f4b71Sopenharmony_ci**Since**: 12 42e41f4b71Sopenharmony_ci 43e41f4b71Sopenharmony_ci**Parameters** 44e41f4b71Sopenharmony_ci 45e41f4b71Sopenharmony_ci| Name| Description| 46e41f4b71Sopenharmony_ci| -------- | -------- | 47e41f4b71Sopenharmony_ci| result | Pointer to the sandbox path of the **Desktop** root directory obtained. You also need to include **malloc.h** and use **free()** to release the memory allocated. | 48e41f4b71Sopenharmony_ci 49e41f4b71Sopenharmony_ci**Returns** 50e41f4b71Sopenharmony_ci 51e41f4b71Sopenharmony_ciReturns [FileManagement_ErrCode](_file_i_o.md#filemanagement_errcode). 52e41f4b71Sopenharmony_ci 53e41f4b71Sopenharmony_ci 54e41f4b71Sopenharmony_ci### OH_Environment_GetUserDocumentDir() 55e41f4b71Sopenharmony_ci 56e41f4b71Sopenharmony_ci``` 57e41f4b71Sopenharmony_ciFileManagement_ErrCode OH_Environment_GetUserDocumentDir (char ** result) 58e41f4b71Sopenharmony_ci``` 59e41f4b71Sopenharmony_ci**Description** 60e41f4b71Sopenharmony_ciObtains the sandbox path of the **Documents** root directory. 61e41f4b71Sopenharmony_ci 62e41f4b71Sopenharmony_ci**Since**: 12 63e41f4b71Sopenharmony_ci 64e41f4b71Sopenharmony_ci**Parameters** 65e41f4b71Sopenharmony_ci 66e41f4b71Sopenharmony_ci| Name| Description| 67e41f4b71Sopenharmony_ci| -------- | -------- | 68e41f4b71Sopenharmony_ci| result | Pointer to the sandbox path of the **Documents** root directory obtained. You also need to include **malloc.h** and use **free()** to release the memory allocated. | 69e41f4b71Sopenharmony_ci 70e41f4b71Sopenharmony_ci**Returns** 71e41f4b71Sopenharmony_ci 72e41f4b71Sopenharmony_ciReturns [FileManagement_ErrCode](_file_i_o.md#filemanagement_errcode). 73e41f4b71Sopenharmony_ci 74e41f4b71Sopenharmony_ci 75e41f4b71Sopenharmony_ci### OH_Environment_GetUserDownloadDir() 76e41f4b71Sopenharmony_ci 77e41f4b71Sopenharmony_ci``` 78e41f4b71Sopenharmony_ciFileManagement_ErrCode OH_Environment_GetUserDownloadDir (char ** result) 79e41f4b71Sopenharmony_ci``` 80e41f4b71Sopenharmony_ci**Description** 81e41f4b71Sopenharmony_ciObtains the sandbox path of the **Download** root directory. 82e41f4b71Sopenharmony_ci 83e41f4b71Sopenharmony_ci**Since**: 12 84e41f4b71Sopenharmony_ci 85e41f4b71Sopenharmony_ci**Parameters** 86e41f4b71Sopenharmony_ci 87e41f4b71Sopenharmony_ci| Name| Description| 88e41f4b71Sopenharmony_ci| -------- | -------- | 89e41f4b71Sopenharmony_ci| result | Pointer to the path of the **Download** root directory obtained. You also need to include **malloc.h** and use **free()** to release the memory allocated. | 90e41f4b71Sopenharmony_ci 91e41f4b71Sopenharmony_ci**Returns** 92e41f4b71Sopenharmony_ci 93e41f4b71Sopenharmony_ciReturns [FileManagement_ErrCode](_file_i_o.md#filemanagement_errcode). 94