How to load file, when I know it's filename, but not fid?
I'd definitely go with EntityFieldQuery, not a really complicated solution:

$query = new EntityFieldQuery();
$query-&gt;entityCondition('entity_type', 'file')
      -&gt;propertyCondition('filename', '&lt;filename&gt;%', 'LIKE');
$result = $query-&gt;execute();
if (!empty($result['file'])) {
  $files = entity_load('file', array_keys($result['file']));
}


Use of conditions is not really recommended on any load multiple function anymore, the method above would be more standard and "future proof" as EntityQuery is the way to go in Drupal 8.

Installing file entity module would add much more value on what you can do regarding managed files.