A File
объект не содержит данных файла, это более или менее класс, который описывает файл или папку только по имени (пути).
File
не является окончательным, поэтому вы можете расширить его и предоставить собственную реализацию, но это не помогает, потому что в отличие от Sockets, экземпляр File
не может возвращать входной или выходной поток. File
- это , используемый классом чтения, записи или потокового класса, чтобы просто получить путь к файлу для чтения / записи данных через дисковый ввод-вывод. Так что издеваться над File
не поможет.
Вы должны будете передать входной поток другому классу, который предоставляет данные из вашего источника памяти. Единственный шанс взглянуть на API или, вторая идея: проверить, можете ли вы что-то сделать с помощью отражения. Может быть, вам повезло, и у класса есть поле inputtream, а может, вам снова повезло, и этого достаточно, чтобы просто установить собственный экземпляр inputsream.