В дополнение к другим ответам здесь, похоже, что нет единого способа сделать это на стороне клиента (кроме Flash) для старых браузеров.
Однако для IE7 / 8 мне удалосьвзломать что-нибудь вместе с помощью ActiveX.
var filePath = f:\oo.txt;
var fso = new ActiveXObject("Scripting.FileSystemObject");
var textStream = fso.OpenTextFile(filePath);
var fileData = file.ReadAll();
Затем я могу передать это той же функции, что и reader.onload в вопросе выше.Очевидно, что это плохое, взломанное решение, которое может быть заблокировано некоторыми политиками безопасности - хотя оно работает по крайней мере для IE7!