implement part of File func