![]() |
Перенос символов на новую строку из текстового вайла
Привет всем.
Нужна ваша помощь, у меня есть файл текстовый, в нем есть строка количество символов может быть любым как русские так и английские символы. Нужно создать скрипт который бы эту строчку в файле делил на символы и каждый символ переносил на новую строку, например строка "таракан" эту строчку нужно сделать так: т а р а к а н И сохранить файл. Заранее благодарю. |
|
Код:
(function(file, enc) { // enc Default = -2, Unicode = -1, ASCII = 0 |
Вложений: 1
Цитата:
|
angel_lyucifer, тогда просто воспользуйтесь кодом, предложенным коллегой greg zakharov, только замените в двух местах '\n' на '\r\n', иначе получите концы строк в формате Unix. Это JScript.
|
Iska, для одной единственной строки использовать коды выше... как-то однако. Этот код мной был накидан исходя из соображений, что в файле может быть несколько строк (вызов функции ReadLine по достижении окончания файла). Но раз файл представляет из себя однострочник, цикл следует выкинуть, да и код можно значительно ужать. А если бы автор темы пользовался Vim, вся его задача сводилась бы к команде:
Код:
vim -c "%s/\(.\)/\1\n\r/g" -c exit file.txt |
Цитата:
|
Цитата:
Цитата:
Цитата:
|
И отчего уверенность в том, что все начнется с WSH, но в итоге будет подведено к bat, не покадала меня с самого начала?
Iska, в идеале вообще было бы здорово отказаться от архаичного WSH, в пользу какого-нибудь интерпретируемого языка или технологии вроде NodeJS. Последний, к слову, в виду своей переносимости и единофайловой сущности (один единственный экзешник) для операций чтения\записи с\на диск(а)? очень даже ничего. Однако, в виду штатности PowerShell (начиная с Win7) проще использовать последний, ибо решением будет нечто вроде: Код:
(Get-Content file.txt).ToCharArray() | Out-File file.txt -Encoding Default Код:
grep -o . file.txt > tmp.txt Код:
@echo off |
Цитата:
Цитата:
Цитата:
Цитата:
|
Iska, какой смысл использовать нечто штатное, обязывающее к написанию довольно внушительного кода, когда можно использовать сторонее средство при условии, что не требуется некой унифицированность? Может Node как технология и не самая лучшая, но пока что только благодаря ей мне удалось с малым количеством телодвижений запустить PowerShell в браузере (это было необходимо для реализации интерактивно-удаленного обучения некоторых админов). То же и прочие технологии. Правда по части Python'а и Perl'а правда такова, что добрая часть инфраструктуры Linux зиждется именно на них, а то, что PowerShell претендует на звание кроссплатформенной технологии почитателями юниксподобных систем воспринимается с насмешкой. Следовательно, скептически можно относиться ко всему угодно, ибо не существует ни одной такой технологии, способной решить всякую без исключения задачу, а если учесть что время является одним из ключевых факторов в решении задач, то решение последних с минимальными затратами и обуславливает в конечном итоге выбор технологии\платформы\языка. Понимаете, все это риторика, не более.
|
Цитата:
В противном же случае… Тот же PowerShell. Ладно, когда от версии к версии наблюдается различное поведение, но вот, когда в рамках одной и той же версии на разных платформах разное поведение — это уже перебор. Помните, как у нас с Вами на SCI такое наблюдалось — одна и та же версия 2.0, с одной и той же версией .Net, у Вас под Windows 7, а у меня под Windows XP один и тот же код давал разные результаты, и мы спорили, нужен ли там [void] перед результатом (или |Out-Null — после)? Цитата:
Цитата:
|
Цитата:
|
Ну, завсегда может прийти лесник и раздать всем сестра́́м по серьга́́м.
|
Цитата:
|
Время: 15:09. |
Время: 15:09.
© OSzone.net 2001-