![]() |
Scripting Runtime: Ошибка ReadLine из пустого файла
Как сначала проверить, есть ли в файле текст?
|
обычно, построчное чтение засовывают в цикл while по условию NOT EOF EOF - End Of File
соответственно для пустого файла программа не войдёт в этот цикл |
самое похожее на EOF что мне удалось найти - AtEndOfStream
По нажатию баттона выполняется примерно такой js код f1 = fso.GetFile("c:\\textfile.txt"); ts = f1.OpenAsTextStream(); while (!(ts.AtEndOfStream)) { s1 = ts.ReadLine(); alert (s1) ; } алерт не выполняется, баттон остаётся нажатый, IE зависает. Если в файле есть >=1 символов всё ок. |
ts = fso.OpenTextFile("c:\\textfile.txt", 1, true);
while (!ts.AtEndOfStream) { s1 = ts.ReadLine(); alert ("s1") ; } тот же результат. Приходится сначала дописывать в конец файла строку, чтобы исключить пустой файл. |
Всё правильно - оно и есть.
Да нечему там зависать - ошибка в другом месте. Укажи явно тип кнопки и return обработчика. |
Да, ошибка в другом месте.
и тоже непонятно var hd= '<html><head><meta http-equiv="Expires" content="Mon, 26 Jul 2010 05:00:00 GMT" /><title>Project</title><META http-equiv=Content-Type content="text/html; charset=windows-1251"><script type="text/javascript" charset="windows-1251" src = "localhost/PROJECT/scrpt.js"></script></head><body>' var topbuttons = '<button onclick="acts( )">Доки</button>' function acts() { var ts, s1 = "" ; var fso = new ActiveXObject("Scripting.FileSystemObject"); document.writeln(hd); // <--------------------------------------------------- с этой строчкой виснет, без - нет. document.writeln(topbuttons); ts = fso.OpenTextFile("c:\\FileAkts.txt", 1, true); while (!ts.AtEndOfStream) { s1 = s1 + ts.ReadLine(); } ts.Close(); document.writeln(s1); document.close(); } |
естественно - в середину html документа пытаетесь вставить другой html-документ
|
А как правильно?
В общем идея такая, в строке topbuttons много разных кнопок, все функции в одном js-файле, все функции первым делом пишут строки hd и topbuttons, а дальше по назначению нажатой кнопки. Решение: поменял путь к скрипту на относительный. |
Так неясно же, чего требуется добиться. "В общем идея такая" - это просто пересказ приведённого кода, а что он неправильный мы уже разобрались.
|
Время: 03:50. |
Время: 03:50.
© OSzone.net 2001-