Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: для новичков > Чтение их файла


Автор: AlphaAndOmega 1.3.2009, 04:11
Господа, и если есть дамы. 
           Я совсем зеленая по этому делу.
Подскажите плиз, у меня есть фаил doc или txt можно ли сделать так на явескрипт, что бы она открывала этот фаил и все содержимое отображала на странице, я знаю что например в си и практически во всех языках это можно сделать, а как это реализуется на яве? 
Спасибо!

Автор: bars80080 1.3.2009, 11:24
на яве это тоже как-то реализуется и рассказать об этом могут в разделе java
на javascript это в принципе невозможно без сторонних элементов типа ActiveX, но и в этом случае мы говорим о работе с файлом автономно на компьютере пользователя.
так что вопрос в лоб - где находится файл?

Автор: AlphaAndOmega 1.3.2009, 21:37
На сервере в тойже директории что и страница!

Автор: bars80080 1.3.2009, 22:07
javascript этим не занимается. узнайте какой серверный язык поддерживается и задайте вопрос в разделе этого языка

Автор: zibox86 2.3.2009, 00:03
А по чему бы и не с ActiveXObject ?

Код

var FSO = new ActiveXObject("Scripting.FileSystemObject");
var file = FSO.OpenTextFile("путь", параметр); 

Автор: bars80080 2.3.2009, 00:12
Цитата(zibox86 @  1.3.2009,  23:03 Найти цитируемый пост)
А по чему бы и не с ActiveXObject ?

для файла расположенного на сервере?

Автор: zibox86 2.3.2009, 00:14
Ну на своем же сервере?

Автор: AlphaAndOmega 2.3.2009, 11:26
ой, ну все я запуталась... кореоче есть грубо говоря жеский жиск ( ограниченной пространсво на нем) созданы каталоги, и сранички расположенны в них, в том чиле в одной из папок есть страничка str.htm, в ней в ней осуществляется какой либо сценарий неважно, есть второй файлик который распологается в одном катологе с этой страничкой файлик file.doc ( вот только не знаю что лучше док или txt), Требуется сделать так что б содержимое этого файла читалось вот. что то в роде синхронизации... Вот может я говорю что-то не серьезное я просто думаю что это реализовать можно, но не знаю как, и по этому обращаюсь к вам. Чисто есть текст нужо его отобразить на странице, а сам текст в доке о как... замутила.

Добавлено через 1 минуту и 24 секунды
и еще 
var FSO = new ActiveXObject("Scripting.FileSystemObject");
var file = FSO.OpenTextFile("путь", параметр); 
для этого что лучше txt или doc, ща буду пробывать!

Автор: zibox86 2.3.2009, 23:53
AlphaAndOmega, txt

Автор: gang 3.3.2009, 02:15
Не работает скрипт при двойном использовании его на одной странице.

Пример: при копировании ниспадающего меню в соседнюю ячейку таблицы, 
сохраняется только функция "выпадения-вываливания". Ссылки перестают работать.
Пожалуйста, подскажите, как выйти из ситуации, не отказываясь от идеи размещения 
одинаковых скриптов на одной странице?

Автор: Michael.de 3.3.2009, 02:31
zibox86, а как прочитать содержимое файла? Ведь метод OpenTextFile(path\\fileName.ext, iomode, create, format) только открывает текстовый файл FileName на чтение или запись, но не читает его... или?

Цитата('нашёл в инете')
Параметр IOMode определяет метод открытия файла и может принимать следующие параметры:
ForReading (значение 1) - открытие файла только для чтения, ForWriting (значение 2) - открытие файла на запись и ForAppending (значение 8) - открытие файла для дозаписи.

Параметр Create определяет, создавать ли новый файл при открытии (значение true), если на момент применения метода файл FileName не существовал.

Параметр Format указывать на кодировку открываемого файла:
TristateUseDefault (значение -2) - открытие файла в текущей системной кодировке, TristateTrue (значение -1) - открытие файла в кодировке Unicode и TristateFalse (значение 0) - открытие файла в кодировке ASCII.

Код
<script LANGUAGE="JavaScript">
var ForWriting = 2;
var TriStateFalse = 0;
var obj = new ActiveXObject("Scripting.FileSystemObject");
var newFile = obj.OpenTextFile("С:\\...path...\\file.html", ForWriting, true, TriStateFalse);
</SCRIPT>

Автор: zibox86 3.3.2009, 19:28
Michael.de, 
Код

var FSO = new ActiveXObject("Scripting.FileSystemObject");
var file = FSO.OpenTextFile("путь", параметр); 
while(!f.AtEndOfStream)
    document.write(f.ReadLine + "<br>");
f.close();


А еще есть Read(), ReadAll(), ReadLine()

Автор: AlphaAndOmega 3.3.2009, 20:34
чет не получается, параметр я так понимаю будет циферка 1 тира onlyforRead или какой? а путь, если фаил в тойже директории что и страничка то просто указываю имя?  типа var file = FSO.OpenTextFile("mas.txt ", '1')

Автор: zibox86 3.3.2009, 22:12
AlphaAndOmega, Параметр: 0 - на чтение, 2 на запись с затиранием, 8 - добавление в конец

Автор: AlphaAndOmega 4.3.2009, 12:45
А в книжке на писано что 1 только для  чтения ... лас спс ща глянем че получается!

Автор: AlphaAndOmega 6.3.2009, 15:45
Я вроде и  smile ... но чет у меня не хочет работать... видать руки кривые. Лан будем разбиратся ... Спасибо! smile

Добавлено через 1 минуту и 12 секунд
Причем  я  и в книге нашла про это, а всерано не хочет!

Автор: kokcu 28.4.2010, 14:33
 Удалено

Автор: magelan 28.4.2010, 16:55
Я думаю проблема в том, что функция хочет физический путь на сервере типа:

F:\WWWRоot\mysite\download\txt\my.txt

Теоретически узнать этот путь можно.
Практически лучше воспользоваться скриптовым языком php, или что там у вас в наличии.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)