I would have the following structure
public class FileProcessor : IFileProcessor
Func<string,IFileRepo> createFileRepo; //I want to use constructor injection for the filename so I need a factory
public void ProcessFile(string filename)
IFileRepo repoFile = this.createFileRepo(filename);
var data = repoFile.Read();
You could call it a service if you like, but I think its best to avoid generic terms like 'service' 'manager' etc where possible. Even 'Processor' is a bit generic, you might consider 'Importer' or some other term that more closely matches what the business calls this process.
Its single responsibility is to transfer data from a File Repository to a Database Repository (or several DB repos if you require).
It can encapsulate the business logic of this process, so would regard it as being in the Business Logic Layer. We should use an interface to allow it to be replaced by alternative business logic if required at a later date.