Per your comment:
[the files] may be on the order of 100-300MB
You can't process anything close to that size in Apex. The heap limit for most asynchronous code is 12MB.
While in general Apex is poorly suited to processing file data, you can do it by querying the data. For example, to get Content Files', well, content, you can query
SELECT VersionData FROM ContentVersion WHERE ...
which will result in a
Blob instance that, provided it's UTF-8, you can convert to text and process - provided you can stay within governor limits.