【问题标题】:What does a hash do to a variable in VB?散列对VB中的变量有什么作用?
【发布时间】:2019-09-05 02:31:08
【问题描述】:

我必须将一个 VB6 程序重构为 C#,并坚持理解以下几行:

Set myFileSystemObject = New FileSystemObject
Set myTextStream = myFileSystemObject.OpenTextFile("myTextFile.txt")
Open sPrinterPort For Output As iFileNumber
Print #iFileNumber, myTextStream.ReadAll
Close #iFileNumber

我确实知道一般情况,但由于我不习惯 VB 语法,所以我想知道具体是什么

Print #iFileNumber, myTextStream.ReadAll

确实如此。更具体地说,iFileNumber 前面的# 做了什么。为什么会在那里?变量本身不足以在流上打印吗?

这只是为了准确理解代码中发生的事情。

【问题讨论】:

    标签: text printing vb6 filestream


    【解决方案1】:

    Print #iFileNumber, myTextStream.ReadAllReadAll返回的字符串打印到编号iFileNumber打开的文件中(而且因为语句后面没有分号,所以最后还加上了vbNewLine。)

    #(用于“数字”)自古以来就存在。 VB6 只是支持它。它在执行方面没有任何作用。它用于帮助提高可读性并使语言更自然。大声说出来:

    Open "1.txt" For Input As 1
    

    对比

    Open "1.txt" For Input As #1
    

    【讨论】:

    • 其实PrintPrint #是两种不同的说法。虽然有些地方英镑/数字符号(堵嘴,please 不是“hash”)是可选的,但这不是其中之一。
    【解决方案2】:
    Print #iFileNumber, myTextStream.ReadAll
    

    在我自己尝试理解这一点时,我遇到了这个site,其中有一个关于打印到打印机的部分。他们说#some_integer 表示频道号:

    通道号是 0 到 999 之间的任何整数值,前面有一个井号 (#);它指示设备的特定通道。

    通道是您的程序与输入或输出设备(例如打印机或文件)之间的连接。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-12-10
      • 2013-12-08
      • 1970-01-01
      • 2022-12-04
      • 2014-10-03
      • 2015-03-05
      • 2019-06-07
      • 1970-01-01
      相关资源
      最近更新 更多