I try to be grammatically correct in my naming*. I\'ve always used filename instead of fileName. The java convention also seems to use this, but
Lower camel case is recommended for fields and parameters.
Example 1:
fileName // for fields, parameters, etc.
FileName // for properties, class names, etc.
Generally, fileName is used and NOT filename; you can verify that by reading source code of open source stuff created by Microsoft, such as Enterprise Library.
Reasons:
Example 2:
fileName, fileSize... // instead of filename AND filesize
See also:
For a full set of naming convention rules, I recommend checking this book:
And also check some stuff at IDesign.net