Мне нужно получить данные из файла необычного типа. Программное обеспечение представляет собой очень специфичный для отрасли пакет, созданный в Германии и не имеющий особой маркировки, но, кажется, его называют «Top10», и оно используется для укладки каменных столешниц на каменную плиту, которую затем подают на три мостовые пилы с ЧПУ на нашем заводе.
Файлы, экспортируемые на наши алмазные мостовые пилы, являются ".iso". Это открывается как обычный текстовый файл в Notepad ++. Я могу легко разобрать файл с помощью VBA / Excel и получить размеры разрезов. К сожалению, у него есть только числовые команды, и ничего, что просто показывает размер каменной плиты, из которой он вырезан. В каждой работе есть файл .iso для каждой каменной плиты.
Файл, в котором хранится весь проект (несколько каменных плит), представляет собой файл ".top". Открытие этого файла в Notepad ++ показывает несколько нормальных символов, но в основном NUL. Я не могу разобрать это с моим VBA / Excel на основе чтения .txt файлов вообще.
Удивительно, но я отчетливо вижу кусочки камня в файле .top, но символы, в которых хранятся их размеры, должны быть в символах "NUL".
Как узнать структуруэтого файла достаточно, чтобы просто прочитать другие символы?
Цель состоит в том, чтобы создавать отчеты и метрики без необходимости открывать тысячи файлов вручную.
'Это несколько верхних строк .isoфайл ... Я могу легко прочитать это как текстовый файл, но он не дает мне размер плиты.
N10 ; NC-File: Q20294_3120.iso
N15 ; Date: 13:28:56 - 07.10.19
N20 ; Project-File: Q20294.top
N25 ; Program: TOP
N30 ; Machine: GMM Intra
N35 ; User: Ollie
N40 ; Computer: OLLIE-PC
N45 ; PP: OSAI_V2
N50 ; Version: 10.0.4.9
N55 ; ------------------------
;
N60 ; ===== Preconditions =====
N65 E601=20.0000 ;Slab Thickness
N70 ( CLS, USER\PROGRAMS\SEKON\PRECOND )
;
N75 ; ===== Measure Thickness =====
N80 (DIS,"Step 0 -> MEASURE THICKNESS")
N85 E641=1525.0000 ; (Measure X)
N90 E642=725.0000 ; (Measure Y)
N95 E643=0 ; (Center)
'Это то, что файл .top показывает в Notepad ++, но это простопоказывает много NUL, и я не могу на самом деле разобрать его, используя мой существующий VBA вообще. Q20294 - это имя задания, а 3115 и т. Д. - идентификаторы плиты.
top@sekon.de
10.0.4 ; Ì d Q20294
; Ì 07.10.2019
‚
GMM Intra €˜ 33333Ïz@š™™™™™@š™™™™™É? @
d ” Ê ¦ ÍÌÌÌÌÌ@
ƒ( $À @ 4@… ž Ÿ ²$
³
GMM Intra · Q20294_3115.iso ¸ Q20294_3115.top ¹ Q20294_3115.jpg º
²$ ³
GMM Intra · Q20294_3116.iso ¸ Q20294_3116.top ¹ Q20294_3116.jpg º
²$ ³
GMM Intra · Q20294_3118.iso ¸ Q20294_3118.top ¹ Q20294_3118.jpg º
²$ ³
GMM Intra · Q20294_3120.iso ¸ Q20294_3120.top ¹ Q20294_3120.jpg º
²$ ³
GMM Intra · Q20294_3121.iso ¸ Q20294_3121.top ¹ Q20294_3121.jpg º
Рا@ pƒ@ ¨–@ 4@ .@
D@ D@ .@ Tafel 3115
Это моя простая функция VBA для чтения txtfile.
Public Function readtxt(FulPath As String) As String
e ("readtxt (fulpath=" & FulPath & ")")
readtxt = ""
On Error Resume Next
Open FulPath For Input As #1
readtxt = Replace(Trim(Input$(LOF(1), 1)), vbLf, "")
Close #1
End Function