Перейти к публикации

Деление программ.


Рекомендованные сообщения

И приходится довольствоваться полуфабрикатами на 90-99% выдающих нужный код, за которым "глаз да глаз".

"С плохим аккумулятором - это не езда" :wink: (С) "Берегись автомобиля"
Ссылка на сообщение
Поделиться на других сайтах


Ну если ни кто не предумал более удобного метода решения проблеммы то вот.

Function GetNUM(srch)

a = InStr(strInput, srch)

if a>0 then

b=0

do while ((mid(strInput,a+b+1,1)>="0" and mid(strInput,a+b+1,1)<="9") or mid(strInput,a+b+1,1)="." or mid(strInput,a+b+1,1)="-")

b = b+1

loop

GetNUM = mid(strInput,a,b+1)

end if

End Function

Function StrPad(str,n,c)

a = str

for i = len(str) to (n-1)

a = c & a

next

StrPad = a

End Function

Function ToHex(num)

ToHex = LCase(StrPad(hex(CInt(num)),4,"0"))

End Function

set args = Wscript.Arguments

BaseFileName = args(1)

Folder = args(0)

WriteFolder = Folder &"\" & BaseFileName & "_files"

CurrFile = 1

Set fso = CreateObject("Scripting.FileSystemObject")

if not fso.FolderExists(WriteFolder) then

Set fol = fso.CreateFolder(WriteFolder)

set fol = Nothing

end if

Set tf = fso.OpenTextFile(WriteFolder &"\"& BaseFileName & CStr(CurrFile) ,2,true)

Set rf = fso.OpenTextFile(Folder &"\" & BaseFileName,1)

LastCommand = ""

HeaderLine = ""

LastG88 = ""

LastX = ""

LastY = ""

LastZ = ""

LineCount = 0

while not rf.AtEndOfStream

strInput = rf.ReadLine

if HeaderLine = "" then

HeaderLine = strInput

strInput = rf.ReadLine

SecondLine = strInput

strInput = rf.ReadLine

ThirdLine = strInput

strInput = rf.ReadLine

end if

x = GetNUM("X")

if x<>"" then LastX = x

y = GetNUM("Y")

if y<>"" then LastY = y

z = GetNUM("Z")

if z<>"" then LastZ = z

If left(strInput,3) = "G88" Then

a = InStr(UCase(strInput), "X")

LastG88 = left(strInput, a-1)

end if

tf.WriteLine strInput

LineCount = LineCount + 1

If LineCount>1750 Then

tf.WriteLine "M2"

tf.Close

CurrFile = CurrFile + 1

Set tf = fso.OpenTextFile(WriteFolder &"\"& BaseFileName & CStr(CurrFile) ,2,true)

LineCount = 0

tf.WriteLine HeaderLine

tf.WriteLine SecondLine

tf.WriteLine ThirdLine

tf.WriteLine LastG88 & LastX & LastY & LastZ

end if

wend

rf.Close

set rf = Nothing

tf.Close

set tf = Nothing

set fol = Nothing

set fso = Nothing

Изменено пользователем Roz
Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.
Примечание: вашему сообщению потребуется утверждение модератора, прежде чем оно станет доступным.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.




×
×
  • Создать...