|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
17.08.2011, 19:18 | #1 |
Пользователь
Регистрация: 17.08.2011
Сообщений: 10
|
как заменить символ в текстовом файле?
Добрый день уважаемый All,
Хелп плиз! Целый день бьюсь ...ничего не получается Задача заключается в следующем: необходимо сделать замену одного символа на другой в текстовом файле. Нашел следующий скрипт, но что-то он не пашет......что не так не могу понять или может подскажете более простой способ ? Заранее спасибо!!! Dim FileName, Find, ReplaceWith, FileContents, dFileContents 'Find = Chr(10) Find = "4" ReplaceWith = "5" FileName = "c:\15\txt.txt" 'Read source text file FileContents = GetFile(FileName) 'replace all string In the source file dFileContents = Replace(FileContents, Find, ReplaceWith, 1, -1, 1) 'Compare source And result If dFileContents <> FileContents Then 'write result If different WriteFile FileName, dFileContents MsgBox "Replace done." If Len(ReplaceWith) <> Len(Find) Then 'Can we count n of replacements? MsgBox ((Len(dFileContents) - Len(FileContents)) / (Len(ReplaceWith) - Len(Find))) & _ " replacements." End If Else MsgBox "Searched string Not In the source file" End If End Sub 'Read text file Function GetFile(FileName) If FileName <> "" Then Dim FS, FileStream Set FS = CreateObject("Scripting.FileSystemO bject") On Error Resume Next Set FileStream = FS.OpenTextFile(FileName) GetFile = FileStream.ReadAll End If End Function 'Write string As a text file. Function WriteFile(FileName, Contents) Dim OutStream, FS On Error Resume Next Set FS = CreateObject("Scripting.FileSystemO bject") Set OutStream = FS.OpenTextFile(FileName, 2, True) OutStream.Write Contents End Function |
17.08.2011, 19:31 | #2 | |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
Цитата:
открываете файл, например Word-ом, жмете Ctrl+H, указываете что на что заменить, жмете "сохранить как". в отличие от Вашего макроса - это проверенный способ
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
|
17.08.2011, 19:51 | #3 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,166
|
Чтож это не проверенный? Я проверил
Работает, и как макрос, и как vbs. Только два пробела из поста убрать. Когда постите коды, пользуйтесь тэгами!!!
webmoney: E265281470651 Z422237915069 R418926282008
|
17.08.2011, 20:21 | #4 |
Пользователь
Регистрация: 17.08.2011
Сообщений: 10
|
спасибо, но все должно быть автоматизировано
|
17.08.2011, 20:26 | #5 |
Пользователь
Регистрация: 17.08.2011
Сообщений: 10
|
Hugo121, спасибо. Действительно макрос работает с обычными txt файлами. с моим не работает....ломает его, пока не могу понять почему.
|
17.08.2011, 20:59 | #6 |
Пользователь
Регистрация: 17.08.2011
Сообщений: 10
|
нашел решение. проблема была в том, что txt file был в unicode формате.
|
17.08.2011, 22:08 | #7 |
Пользователь
Регистрация: 17.08.2011
Сообщений: 10
|
подскажите плиз,
Как найти перенос строки + символы " /" find = Chr(10) & " /" - что-то не не хочет искать Задача состоит в том, чтобы найти перенос строки + " /" и заменить на пробел во всем текстовом файле. |
17.08.2011, 22:19 | #8 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,166
|
Код:
webmoney: E265281470651 Z422237915069 R418926282008
|
18.08.2011, 13:26 | #9 |
Пользователь
Регистрация: 17.08.2011
Сообщений: 10
|
помогло find = Chr(13) & " /" - это все работает , если файл в ANSI
остался последний вопрос, как текстовый файл преобразовать из Unicode в ANSI ? |
18.08.2011, 13:31 | #10 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,166
|
Как кодом - не знаю, я пересохранял блокнотом или в AkelPad.
webmoney: E265281470651 Z422237915069 R418926282008
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как в файле заменить один символ на другой? | RockGirl | Помощь студентам | 0 | 16.05.2011 09:40 |
Как заменить все символы в текстовом поле на один определённый | Memfis1992 | Общие вопросы Delphi | 3 | 16.06.2010 15:01 |
Как в текстовом файле распознать символ перевода строки? | mzelenyy | Общие вопросы C/C++ | 4 | 12.06.2010 11:30 |
Как заменить слово в текстовом поле. | vladtr | SQL, базы данных | 2 | 19.04.2010 09:46 |
Как можно убрать пробелы в текстовом файле? | zzz007 | Microsoft Office Excel | 1 | 20.08.2009 23:14 |