Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - VBS. Формат суммы

Ответить
Настройки темы
VBS/WSH/JS - VBS. Формат суммы

Новый участник


Сообщения: 24
Благодарности: 0

Профиль | Отправить PM | Цитировать


Добрый день всем. Есть список из сумм. Примеры:

000000059900
000000010200
000000155005
....
....

Всегда длиной 12. Нужно преобразовать их в такой вид, на примерах выше:
599,00
102,00
1550,05

Т.е. обязательно удаляются все нули слева. И ставится запятая (копейки двух последних знаков).

Отправлено: 02:46, 12-11-2015

 

Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Попробуйте так:
Скрытый текст
Код: Выделить весь код
Option Explicit

Const ForWriting   = 2

Dim strSourceFile
Dim strContent


If WScript.Arguments.Count = 1 Then
	strSourceFile = WScript.Arguments.Item(0)
	
	With WScript.CreateObject("Scripting.FileSystemObject")
		If .FileExists(strSourceFile) Then
			With .OpenTextFile(strSourceFile)
				strContent = .ReadAll()
				.Close
			End With
			
			With WScript.CreateObject("VBScript.RegExp")
				.Global = True
				.Pattern = "0*(\d*)(\d)(\d{2})"
				
				If .Test(strContent) Then
					strContent = .Replace(strContent, "$1$2,$3")
				Else
					WScript.Echo "Can't find pattern [" & .Pattern & "]."
					WScript.Quit 3
				End If
			End With
			
			.CopyFile strSourceFile, strSourceFile & ".bak"
			
			With .OpenTextFile(strSourceFile, ForWriting)
				.Write strContent
				.Close
			End With
		Else
			WScript.Echo "Can't find source file [" & strSourceFile & "]."
			WScript.Quit 2
		End If
	End With
Else
	WScript.Echo "Usage: cscript.exe //nologo """ & WScript.ScriptName & """ <Source file>"
	WScript.Quit 1
End If

WScript.Quit 0

Исходный файл указывается аргументом скрипта. Также можно просто перетянуть исходный файл на скрипт в Проводнике.
Это сообщение посчитали полезным следующие участники:

Отправлено: 04:03, 12-11-2015 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Забанен


Сообщения: 793
Благодарности: 260

Профиль | Цитировать


Можно оформить и как бат:
Код: Выделить весь код
0</* :
@cscript /nologo /e:jscript "%~f0" %1&exit /b */0;
(function(file) {
  var s, l, r = [];
  
  try {
    with (new ActiveXObject('Scripting.FileSystemObject')) {
      s = OpenTextFile(file, 1);
      while (!s.atEndOfStream) {
        l = (Number(s.ReadLine()) / 100).toString();
        r.push(l.match(/\./) === null ? l + '.00' : l);
      }
      s.Close();
      
      s = OpenTextFile(file, 2);
      for (var i = 0; i < r.length; i++) {
        s.WriteLine(r[i]);
      }
      s.Close();
    }
  }
  catch (e) { WScript.echo(e); }
}(
  WScript.Arguments.length !== 1
  ? (function() {
    WScript.echo('File has not been specified correctly.');
    WScript.Quit(1);
  }()) : WScript.Arguments.Unnamed(0)
));

Отправлено: 10:06, 12-11-2015 | #3


Аватара для gora

Ушёл из жизни


Сообщения: 6021
Благодарности: 3491

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
oldN = 000000059900
oldN = 000000155005

newN = oldN \ 100 & "," & ("0" And (oldN Mod 100) < 10) & oldN Mod 100

Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Popup oldN & vbCR & newN

Отправлено: 15:48, 12-11-2015 | #4



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - VBS. Формат суммы

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
VBA - Проверка суммы значений VitProff Программирование и базы данных 2 21-06-2015 12:10
VBS/WSH/JS - Помогите редактировать Autorun_Disable.vbs на Autorun_Enable.vbs nod201 Скриптовые языки администрирования Windows 0 05-12-2009 05:44
Ошибка контрольной суммы WooLK Непонятные проблемы с Железом 12 04-01-2009 19:23
Перевод MPEG4 формат в формат DVD Goshar Видео и аудио: обработка и кодирование 1 21-10-2006 13:56
Посчет контрольной суммы Surround Хочу все знать 5 04-02-2005 04:27




 
Переход