Скрипт вывода имен файлов.
Добрый день! Помогите пожалуйста, нужен скрипт вывода имен файлов папки по возрастанию размера. Спасибо заранее!
|
у javascript нет доступа к файловой системе
|
ratratrat, смотря где...если на сервере, то это на PHP нужно писать
если на клиенте, то только с Windows и в IE, используя ActiveX-объект FileSystemObject |
Файл .JS или .JSE на клиентской машине, при открытии которого должно быть:
вывод имен файлов папки по возрастанию размера Папка указывает заранее в скрипте. |
Цитата:
|
ratratrat,
var folderaddress = "C:/"; // имя папки из которой будет происходить считывание файлов var fso, f, fc, s = "", ar = [], obj = {}, i = 0; fso = new ActiveXObject("Scripting.FileSystemObject"); f = fso.GetFolder(folderaddress); fc = new Enumerator(f.files); for (; !fc.atEnd(); fc.moveNext()) { obj[fc.item().size] = fc.item().Name; ar[i] = fc.item().size; i++; } ar.sort(function(a,b){return a-b;}); for (i=0; i < ar.length; i++) { s += obj[ar[i]]+"\n"; } WScript.Echo(s); |
lord2kim,
огромное спасибо! Это вывод имен файлов папки по возрастанию размера? То есть от меньшего файла к большему? Как тут на форуме ставить + ? |
ratratrat, по возрастанию
рядом с ником стоит "Карма" |
lord2kim,
Извини за наглость, не можешь помочь еще с 2 задачами? 1)Написать программу (СКРИПТ .JS, .JSE) вывода в файл списка групп на факультете разбив их на 4 колонки. (Названия групп произвольное) 2)В зависимости от кода ошибки записать в текстовый файл результат проведения операции копирования. Я Visual Basic .NET программист, не писал ранее скрипты, а вот появилась в них зависимость. |
ratratrat,
var groups = ["АВУП41", "АСУ31", "АСУ41", "АСУ41", "АСУ51", "АСУ52", "БМС41", "БМС51", "УПТС11", "УПТС12", "УПТС21", "УПТС22", "КИБ21", "КИБ22", "КИБ31", "КИБ32", "КИБ41", "КИБ42", "КИБ51", "КИБ52"]; var fso = new ActiveXObject("Scripting.FileSystemObject"); var file = fso.CreateTextFile(fso.GetAbsolutePathName("") + "/1.txt", 1); for (i=0; i < groups.length; i+=3) { file.WriteLine((groups[i] || "")+"\t\t"+(groups[i+1] || "")+"\t\t"+(groups[i+2] || "")+"\t\t"+(groups[i+3] || "")); } file.Close(); var fso = new ActiveXObject("Scripting.FileSystemObject"), file_err = fso.CreateTextFile(fso.GetAbsolutePathName("") + "/1.txt", 1), files = ["1.jpg", "2.jpg", "3.jpg", "4.jpg", "5.jpg", "6.jpg", "7.jpg", "8.jpg", "9.jpg"]; for (i=0; i < files.length; i++) { try { fso.MoveFile("C:/"+files[i], fso.GetAbsolutePathName("")+"/"); file_err.WriteLine("копирование произведено успешно"); } catch(e) { file_err.WriteLine(e.number + " -> " + e.message); } } file_err.Close(); |
lord2kim,
Цены нету вам! |
Прошу еще помочь по возможности с данной задачей:
Написать программу (скрипт .JS, .JSE) преобразования файла группы из одно колоночного в двух колоночный. После запуска выходит информация в окошечько маленькое, там информация выходит в одну колоночную, надо что бы выходила в двух колоночную. Помоги пожалуйста ! Задание похоже на: var groups = ["АВУП41", "АСУ31", "АСУ41", "АСУ41", "АСУ51", "АСУ52", "БМС41", "БМС51", "УПТС11", "УПТС12", "УПТС21", "УПТС22", "КИБ21", "КИБ22", "КИБ31", "КИБ32", "КИБ41", "КИБ42", "КИБ51", "КИБ52"]; var fso = new ActiveXObject("Scripting.FileSystemObject"); var file = fso.CreateTextFile(fso.GetAbsolutePathName("") + "/1.txt", 1); for (i=0; i < groups.length; i+=3) { file.WriteLine((groups[i] || "")+"\t\t"+(groups[i+1] || "")+"\t\t"+(groups[i+2] || "")+"\t\t"+(groups[i+3] || "")); } file.Close(); Только не запись, а вывод в 2 колонки. То есть что-то типа MSGBOX (MESSAGEBOX) с двумя колонками текста приведенного в var groups. |
lord2kim, и я прошу у тебя помощи!
1. Написать программу (скрипт) вывода имен файлов папки по убыванию размера. (она точно такая же, только по убыванию, как ты видишь) 2. В зависимости от введенной с экрана буквы создать файл отчета по оперативной памяти с именем БУКВА+ДАТА ПОМОГИТЕ, пожалуйста! |
В каком вузе такое задают?
|
zebra, в УГГУ!
|
ratratrat, не понятно в чем вопрос конечно...
var groups = ["АВУП41", "АСУ31", "АСУ41", "АСУ41", "АСУ51", "АСУ52", "БМС41", "БМС51", "УПТС11", "УПТС12", "УПТС21", "УПТС22", "КИБ21", "КИБ22", "КИБ31", "КИБ32", "КИБ41", "КИБ42", "КИБ51", "КИБ52"]; var str = ""; for (i=0; i < groups.length; i+=2) { str += groups[i]+"\t\t"+(groups[i+1] || "")+"\n"; } WScript.Echo(str); pashka_k-r, 1) замени соответствующую строчку на ar.sort(function(a,b){return b-a;}); 2) var objItem; var objWMIService = GetObject("winmgmts:\\\\.\\root\\CIMV2"); var colItems = objWMIService.ExecQuery("SELECT * FROM Win32_PerfFormattedData_PerfOS_Memory", "WQL", 0x10 | 0x20); var enumItems = new Enumerator(colItems); for (; !enumItems.atEnd(); enumItems.moveNext()) { objItem = enumItems.item(); WScript.Echo("\tAvailableBytes: " + objItem.AvailableBytes + "\n\ AvailableKBytes: " + objItem.AvailableKBytes + "\n\ AvailableMBytes: " + objItem.AvailableMBytes + "\n\ CacheBytes: " + objItem.CacheBytes + "\n\ CacheBytesPeak: " + objItem.CacheBytesPeak + "\n\ CacheFaultsPersec: " + objItem.CacheFaultsPersec + "\n\ Caption: " + objItem.Caption + "\n\ CommitLimit: " + objItem.CommitLimit + "\n\ CommittedBytes: " + objItem.CommittedBytes + "\n\ DemandZeroFaultsPersec: " + objItem.DemandZeroFaultsPersec + "\n\ Description: " + objItem.Description + "\n\ FreeSystemPageTableEntries: " + objItem.FreeSystemPageTableEntries + "\n\ Frequency_Object: " + objItem.Frequency_Object + "\n\ Frequency_PerfTime: " + objItem.Frequency_PerfTime + "\n\ Frequency_Sys100NS: " + objItem.Frequency_Sys100NS + "\n\ Name: " + objItem.Name + "\n\ PageFaultsPersec: " + objItem.PageFaultsPersec + "\n\ PageReadsPersec: " + objItem.PageReadsPersec + "\n\ PagesInputPersec: " + objItem.PagesInputPersec + "\n\ PagesOutputPersec: " + objItem.PagesOutputPersec + "\n\ PagesPersec: " + objItem.PagesPersec + "\n\ PageWritesPersec: " + objItem.PageWritesPersec + "\n\ PercentCommittedBytesInUse: " + objItem.PercentCommittedBytesInUse + "\n\ PoolNonpagedAllocs: " + objItem.PoolNonpagedAllocs + "\n\ PoolNonpagedBytes: " + objItem.PoolNonpagedBytes + "\n\ PoolPagedAllocs: " + objItem.PoolPagedAllocs + "\n\ PoolPagedBytes: " + objItem.PoolPagedBytes + "\n\ PoolPagedResidentBytes: " + objItem.PoolPagedResidentBytes + "\n\ SystemCacheResidentBytes: " + objItem.SystemCacheResidentBytes + "\n\ SystemCodeResidentBytes: " + objItem.SystemCodeResidentBytes + "\n\ SystemCodeTotalBytes: " + objItem.SystemCodeTotalBytes + "\n\ SystemDriverResidentBytes: " + objItem.SystemDriverResidentBytes + "\n\ SystemDriverTotalBytes: " + objItem.SystemDriverTotalBytes + "\n\ Timestamp_Object: " + objItem.Timestamp_Object + "\n\ Timestamp_PerfTime: " + objItem.Timestamp_PerfTime + "\n\ Timestamp_Sys100NS: " + objItem.Timestamp_Sys100NS + "\n\ TransitionFaultsPersec: " + objItem.TransitionFaultsPersec + "\n\ TransitionPagesRePurposedPersec: " + objItem.TransitionPagesRePurposedPersec + "\n\ WriteCopiesPersec: " + objItem.WriteCopiesPersec); } |
lord2kim,
спасибо огромное! |
Часовой пояс GMT +3, время: 19:30. |