幽灵学院

VB中DOS文件名与长文件名的转换

2019-01-11 11:05 来源:网络整理 编辑:幽灵学院  人气:   评论一下

  自从进入Win95时代以来,Win95的长文件名给人们带来了很多方便,但是由于原来的DOS只支持8.3格式,即8个主文件名加上3个扩展名,所以所有Win95的长文件名都有一个DOS名,具体方法为取原长文件名前6位加~num(其中num为现目录中不重名的序号)。现在的VB已完全支持了长文件名,但是有一点可能没有注意到,即当用command()接收从命令行传来的参数时,如果参数是长文件名,则被强制转换成为DOS名,即8.3格式文件名。由于这两种文件名通用,所以一般情况下不会有什么问题。但遇到特殊场合就不行了。有没有办法再把8.3格式的文件名转换为原来的长文件名呢?答案是:可以。
  让我们编程来回答这个问题:
  首先建立一个窗体,在窗体上加两个TEXT控件,其中第一个TEXT的TEXT属性为“显示命令行参数”,第二个TEXT的TEXT属性为“显示转换后文件名”,再建立一个 commandbutton 控件,其caption属性为“显示”,具体原代码如下:
  ′-------通用,声明:
  Dim dosfilename As String ′声明dos 文件名
  Dim longfilename As String ′声明长文件名
  ′------------
  Private Sub Command1_Click()
  Text1.Text = dosfilename
  Text2.Text = longfilename
  End Sub
  ′--------
  Private Sub Form_Load()
  dosfilename = Command$() ′从命令行取得参数
  longfilename = Dir(dosfilename) ′得到长文件名
  End Sub
  接着生成EXE文件,然后将一个长文件名的文件图标拖到新生成的EXE文件上去,点击EXE文件的commandbutton 就可以看到转换结果了。

作者:马 麟责任编辑:)

天极新媒体 最酷科技资讯

扫码赢大奖

评论

* 网友发言均非本站立场,本站不在评论栏推荐任何网店、经销商,谨防上当受骗!

[提醒] 除特别声明外,该内容由( )发布,转载请保留文章出处!
  •  我顶 
  • 点击
  • 收藏