PLM之家PLMHome-国产软件践行者

[已解决] ufun 获取文件夹下所有prt文件名

  [复制链接]

2019-4-17 08:00:53 2499 2

iPhone 发表于 2019-4-16 12:56:29 |阅读模式

iPhone 楼主

2019-4-16 12:56:29

请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!

您需要 登录 才可以下载或查看,没有账号?注册

x
ufun 获取文件夹下所有prt文件名
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

全部回复2

admin 发表于 2019-4-17 07:54:25

admin 沙发

2019-4-17 07:54:25

C#的  没有用NX 函数 5 {7 a7 _# ~+ n1 ^- Q. N

  Z' Y. ^+ f* ~7 q/ a) q4 }# R& h. t$ D4 Z% T
[mw_shl_code=csharp,true]  Public Class list_all_parts_in_directory5 a* i# C7 d2 n
+ \" \1 D" h" f: K1 G( D
        Public Shared Sub Main()# G9 _! v5 u3 J& G
* P  P1 |1 w3 r* Q, |
            Dim theSession As Session = Session.GetSession()
! @, v& p4 y) q4 D/ c            Dim lw As ListingWindow = theSession.ListingWindow()! i! N( I' e. L" q8 u$ W0 s1 U
/ [+ D: w& D) p/ z, I; b+ ^* F) @
            Dim foldername As String = ""
1 B; d" Q1 y( [/ C            lw.Open()
# L# P/ C7 M& |# b3 e            If (select_directory(foldername) <> DialogResult.OK) Then4 ?* i! {; }; M8 }# A
                lw.WriteLine("Input canceled...exit" & vbCrLf)2 {+ p! k: h; a# ]! |, P
                Return' n5 C- s- ^) r- d0 \! h
            End If
& r/ n1 m2 O6 |: P, b$ O, a
8 T* }2 T4 X  U' q            Dim dir As DirectoryInfo = New DirectoryInfo(foldername)
/ b3 R; L2 R' W5 _$ `            Dim fsi As FileSystemInfo9 K+ _- |7 U. S) `6 q8 t$ @/ Q

4 R! d7 E$ F0 S2 u            lw.Open(); V, P7 P, S) p2 @8 I( b' H
            lw.WriteLine("Parts in directory: " _1 `0 i4 \" v. i: I( D
              & Path.GetFullPath(dir.ToString()) & vbCrLf)1 q  x3 @3 ~7 R& c! n% v

8 ?  M4 `) s; s, p: C* V% L% Z            For Each fsi In dir.GetFileSystemInfos()
( z+ u4 s8 M, E; ~3 k                If (TypeOf fsi Is FileInfo And fsi.Extension.Contains("prt")) Then
+ }6 o$ S6 e, I% O) n6 c8 o                    Dim f As FileInfo = CType(fsi, FileInfo)
6 j! R' W% M! ^0 ]9 V                    Dim size As Long = f.Length
' G7 D2 O+ L: P9 S5 X9 J$ K7 `* e; o/ {                    lw.WriteLine(f.Name & " " & size & "Bytes" & vbCrLf)( T- {- U, ?6 Z" r7 c
                End If
: o& L3 f* Y( Y7 J            Next fsi6 N* O  `' |  E8 n! b' X; `, a! J
! x" W% I; I0 D" _( q- ?2 x
        End Sub; v. v" @1 \+ \, c% F8 ~' l

, T! `7 i; u/ J        Public Shared Function select_directory(ByRef foldername) As System.Windows.Forms.DialogResult
! Z( }9 \$ ~5 x) J
, `, f( z3 g$ r, U. {3 H5 I            Dim fbd As FolderBrowserDialog3 _: k3 Y) I1 ~6 v: T7 `
            Dim result As System.Windows.Forms.DialogResult# H% b2 ^) u# e, {
7 @# V  x; n& k2 O" o0 ?# {
            fbd = New System.Windows.Forms.FolderBrowserDialog()
* h( O% ~, Y# D, K9 {$ I. ^1 R            fbd.Description = "Select directory to check"7 N! R( L, M8 z# }9 i# i. r7 ]7 s
            fbd.ShowNewFolderButton = False( ^) t5 u$ v8 G. Q; l: A
            ' start browsing at Desktop folder, uncomment for any other default directory
2 W  [! Z% P: L            ' fbd.SelectedPath = GetEnvironmentVariable("UGII_BASE_DIR")
  w- c" Q7 o+ B' ^+ j1 G/ N! ]            ' fbd.SelectedPath = GetEnvironmentVariable("UGII_BASE_DIR") + "\Moldwizard"! m# u5 H. V: J' z9 Z$ p1 q# n
            ' fbd.SelectedPath = "c:\aaa\bbb"3 s$ K! o, ^6 \4 Z' @& h7 V
            result = fbd.ShowDialog()" G0 ], N- I: K3 q7 z3 _3 u; Q
            foldername = fbd.SelectedPath1 h' a/ M! `+ l& |  ?- f
            fbd.Dispose()
8 g5 J& U5 r0 q  b, B7 f$ ?1 d            Return result  I, }. T4 J) ]9 K. k

! }6 a  C/ B& A  r9 z3 U! r6 C        End Function
* `! M, A! D. I3 P# v0 X9 H/ G1 s
        Public Function GetUnloadOption(ByVal dummy As String) As Integer* s  z5 G0 G2 R: J. i
            GetUnloadOption = NXOpen.Session.LibraryUnloadOption.AtTermination
) B% U, H( @, g! \& U        End Function9 s% Z* h1 T' f$ s; T) l

, j+ B, s# r* X( C& Z. C    End Class[/mw_shl_code]
" P/ R+ E) }# P7 r( s( W
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复 支持 反对

使用道具 举报

admin 发表于 2019-4-17 08:00:53

admin 板凳

2019-4-17 08:00:53

ufun 的 方法 7 G6 }+ ?7 a6 d
; `" @, g, b6 ^/ B# {% v
8 I2 [* r; Z3 W$ C7 @* p
[mw_shl_code=c,true]int
" A' U: l/ W6 M0 s2 ~        cnt = 0,
; V8 a/ M6 ^1 k, z* o8 e: X8 p        resp;
  y& [* r, _+ C9 [3 m    tag_t+ e( v+ z9 B5 c+ O' D; l
        part;
( h0 X- U5 s  z4 n  J7 R+ Z9 u$ ]    char
& d) Z9 S: j: c' i5 K; t        dirspec[MAX_FSPEC_SIZE+1] = { "" },
" k8 }/ C( f% c        fname[MAX_FSPEC_SIZE+1],
+ q  o7 u# c* A2 [( J+ c3 J7 F+ Y        part_name[MAX_FSPEC_SIZE+1];5 M3 `+ t6 @- D/ g1 j% y" @! q$ _
    UF_PART_load_status_t
% S- m" h2 [( _) y5 i. I  {5 W! Q        status;) A. U" `, j' ]

3 V* r7 x+ P$ y4 c/ P9 b! `9 v    if (UF_CALL(UF_initialize())) return 1;
0 _+ ?7 W; \% G% n4 D' |( O! Y2 r# w6 m. ^  |
    while (printf("Enter directory path:\n") && gets(dirspec) &&
' w4 J$ e6 d7 [* p3 a8 I        strlen(dirspec))
, d" S8 M! S. ]6 M& p* M1 ^, W    {% G4 ]5 @9 u. V9 U! @  P# H
        uc4508(dirspec, (1<<13)|(1<<11), 0, "*.prt");! F$ _; y" [, h& n' A4 b
        while ((resp = uc4518()) == 0)& i- {& W9 X4 g5 i
        {
" J" W0 a( @/ E7 |) H            UF_CALL(uc4600(fname));
7 W0 V  N+ H4 v            UF_CALL(uc4575(dirspec, 2, fname, part_name));# ~* C* M& n' r0 j4 s; [0 x

2 r/ u) i0 h; g8 ?1 y& s' J3 x) X            ECHO( "%d.  %s\n", ++cnt, part_name);
2 y4 a* d+ p' Z1 D0 C' q' p& `% l5 B: U8 `9 S* Q  d+ ^. L
            UF_CALL(UF_PART_open(part_name, &part, &status));
8 W6 g$ O( @0 |* @; T            if (status.n_parts > 0) report_load_status(&status);
/ d3 j5 z+ y$ y8 F/ I            if (!status.failed)2 W. K3 f! f# x- b, _# p' g
            {
3 b5 L) }# U0 m3 p                do_it();. B: X' C( Y: i- r5 l6 l
                UF_PART_close_all();
- y  `$ [- K5 v. i, b- ?  y1 ~6 x            }
+ g9 `2 U! m  j0 _( O% r        }
2 a  C7 i! \8 S- Y/ f8 c1 d8 H* P7 O; e6 X6 ?' e
        UF_CALL(uc4548());
4 n* ]5 l3 {1 I. Q, _2 G: s/ N& q# Z% d* G' y2 K& I5 j4 E1 o
        ECHO("\nProcessed %d parts.\n", cnt);5 I$ u# K, t, e3 V* e, P  Y9 R' o: M
    }[/mw_shl_code]+ C, Q; X3 x" \! o; P
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复 支持 反对

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 注册

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了