Работа с файлами

Тема в разделе "HTML, CSS, XML, JavaScript", создана пользователем AnaStas, 17 сен 2008.

  1. AnaStas

    AnaStas Well-Known Member

    Регистрация:
    16 сен 2008
    Сообщения:
    52
    Симпатии:
    0
    Пожалуйста проконсультируйте.
    При загрузки HTML-страницы два массива должны заполниться данными из двух файлов. Однако только один из них
    (все равно какой!) загружает соответствующий массив. Ощущение такое, что функция обрабатывающая второй файл, после отработки первого просто игнорируется. Коллеги, в чем здесь особенность? ActiveXObject позволяет открывать (не одновременно, а после закрытия предыдущего) несколько файлов?
    Заранее спасибо.
     
  2. Vovochka

    Vovochka Гость

    О_о
    Я так полагаю речь идет о XmlHttpRequest? (IE версия).
    Или о чем вообще?

    Код хоть показали бы, с таким описанием проблемы вам вряд ли кто что доброго скажет.
     
  3. AnaStas

    AnaStas Well-Known Member

    Регистрация:
    16 сен 2008
    Сообщения:
    52
    Симпатии:
    0
    Так выглядит страница .shtml:
    <script type="text/javascript" src="func2.js"></script>
    <script type="text/javascript">
    ...
    <!--
    // ========создаем массив записей групп каналов
    var grp_arr = new Array(); var chn_arr = new Array();
    var file = new ActiveXObject("Scripting.FileSystemObject");
    loadGrp(); loadChn();
    // ==========================================================

    //-->
    </script>
    ...

    Функции loadGrp(); loadChn(); обращаются к файлу func2.js.
    Вот их коды:

    // Функция загрузки списка групп каналов
    function loadGrp() {
    var grpfile = file.OpenTextFile("groups.txt",1);
    var flag="false"; var grplong=0;
    for (i=0; flag="false"; i++){
    grp_arr = new Array();
    grplong = parseInt(grpfile.readLine());
    for (j=0; j<grplong; j++){
    grp_arr[j] = new Array()
    for (k=0; k<3; k++){
    grp_arr[j][k] = grpfile.readLine();
    flag=grpfile.atEndOfStream;
    }
    }
    grp_arr[0][0]=parseInt(grp_arr[0][0]);
    }
    grpfile.Close();
    }
    // Функция загрузки списка всех каналов
    function loadChn() {
    var chnfile = file.OpenTextFile("chanels.txt",1);
    var flag="false";
    for (i=0; flag="false"; i++){
    chn_arr = new Array();
    for (j=0; j<3; j++){
    chn_arr[j] = chnfile.readLine();
    flag=chnfile.atEndOfStream;
    }
    chn_arr[0]=parseInt(chn_arr[0]);
    }
    chnfile.Close();
    }
     
  4. Vovochka

    Vovochka Гость

    Использовать веб-страницу для работы с локальными данными: неверный инструмент для решения задачи.
    Лучше сразу откажитесь от этой затеи.
     
  5. AnaStas

    AnaStas Well-Known Member

    Регистрация:
    16 сен 2008
    Сообщения:
    52
    Симпатии:
    0
    Дорогие мои консультанты, это не моя прихоть, а постановка задачи главным программистом - разработать Web-интерфейс для обработки данных на клиентской машине с минимумом обращений к серверной базе данных.
     
  6. Vovochka

    Vovochka Гость

    Вообще говоря, видно что вы не занимаетесь программированием.
    Две проблемы:
    1) flag="false" - Это присвоение значения. Результатом которого будет строчка "false", которая в свою очередь почти равна true.
    т.е. a = "false" == true
    2) Учитываю используемую строчку "false", вы наверно хотели использовать булевое значение false. Пишется без кавычек.
     
  7. AnaStas

    AnaStas Well-Known Member

    Регистрация:
    16 сен 2008
    Сообщения:
    52
    Симпатии:
    0
    Теперь придется. Молодежь в институт не идет, а я в отделе единственный профессионльный (МИФИ) инженер-системотехник. Реформаторы института почему-то посчитали, что если понизить мне ставку на 4000р (вместо 13000) то я с огоньком проявлю себя на поприще программирования. Так что, хоть мне и за 60, а учиться придеться. (Однако, понимание, что Шекспиром в области программирования мне уже не быть, это понимание есть.)

    Но тем не менее, результат на лицо! Заработал код так как надо. Я восхищен Вами! Теперь остается понять - как flag, будучи строковой, а не булевской, влиял на работу кода с файлами.
    Весьма признателен. Спасибо.

    Есть несколько текстовых файлов с данными. Эти данные загружаются в многомерные массивы по определенному закону (алгоритму). А функции, реализующие этот алгоритм, работают так как описано в теме. Смотрите, как красиво и тонко Vovochka решил проблему.
     
  8. AnaStas

    AnaStas Well-Known Member

    Регистрация:
    16 сен 2008
    Сообщения:
    52
    Симпатии:
    0
    Работа, разумеется, не в интернете. Есть физическая установка. Есть сервер с базой режимов работы и управления ею. Главный программист в купе с физиками и инженерами определил и разработал общую стратегию некой автоматизированной системы на базе персональных и промышленных компьютеров для этой установки. Мне выдается задание по кодированию отдельных моментов. Точно знаю, что по-мимо JS, впереди меня ждут Perl, PHP, TCL и SQL. (от одной только аббревиатуры последние волосы выпадут)
    Если интересно: вот здесь я отработал более 40 лет http://linac.by.ru
    Реформы затеянные Киреенко в нашей отрасли коснулись нашего института не в лучшую сторону и меня перекинули вот сюда: https://twac.itep.ru/
    Ну, а в принципе, мы вот это: http://www.itep.ru/rus/in_rus.shtml
     
  9. AnaStas

    AnaStas Well-Known Member

    Регистрация:
    16 сен 2008
    Сообщения:
    52
    Симпатии:
    0
    Спасибо за помощь и поддержку. Можно считать тему закрытой. И как говорится - ждите новых тем. :)
     
Загрузка...
Похожие Темы - Работа файлами
  1. gx6060
    Ответов:
    2
    Просмотров:
    418
  2. seoman2
    Ответов:
    21
    Просмотров:
    766
  3. NickProstoNick
    Ответов:
    22
    Просмотров:
    1.520
  4. vladis222
    Ответов:
    3
    Просмотров:
    1.127
  5. Lyuska
    Ответов:
    1
    Просмотров:
    1.171

Поделиться этой страницей