CMS.File is just one of page types, so yes, it is possible to create it in code behind. See example:
https://docs.kentico.com/display/API9/Pages#Pages-Creatingpagesinasite'scontenttree
The challenge with CMS.File is that you have to upload actual file, which usually user specifies. So in your case this file should already be on server and you'll have to figure it's path/name on the fly.