If the CSV file isn't huge, it could be included in the App as an Asset - read from assets, save to ASD, but it would be better if the CSV was downloaded by the App to the ASD.
Tantangel - Anke tells me that we cannot even read a CSV from the Download folder @ Android 11+, unless SAF is used - so all the more reason to use the App to download to the ASD.
If the csv file is downloaded by the app (to the Shared folder /Download), it is created by the app.
But if your students change / manipulate this file outside of the app, then this file is no longer created by the app and cannot be accessed (read) by the app (on Android 11+).
So the question is:
Can the manipulations of it be done by the app? If so, there is no problem to access it on all Android versions.
The question of how your students get the APK is another matter. The app can either be downloaded via the Play Store or via another (your own) server.
If the app is not to be distributed via the Play Store, then you can of course also request the special permission MANAGE_EXTERNAL_STORAGE, which grants access to all areas of external storage for all file types (media & non-media files).
There are only two Shared folders to save non-media files (like .csv):
/Download
/Documents
Note: /Downloads is NOT a Shared folder.
However, you cannot use SAF to access a non-media file from /Download that was not created by the app itself. So the file must be saved in /Documents or some other folder - other than
/Download or
the root directory of the external storage.
We can thank Google for all this "rubbish". This constant restriction and paternalism must and will stop.