我必须将 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
面前的#
是做什么的。为什么会出现在那里?变量本身不足以在流上打印吗?
这只是为了准确理解代码中发生的情况。
Print #iFileNumber, myTextStream.ReadAll
将ReadAll
返回的字符串打印到由数字 iFileNumber
打开的文件中(并且由于语句后没有分号,因此最后也会添加vbNewLine
。
#
("数字")自古以来就存在。VB6 只是支持它。它不执行明智的执行。它曾经帮助提高可读性并使语言更自然。大声说出来:
Open "1.txt" For Input As 1
与。
Open "1.txt" For Input As #1
Print #iFileNumber, myTextStream.ReadAll
在自己试图理解这一点时,我遇到了这个网站,其中有一个关于打印到打印机的部分。他们说#some_integer表示频道号:
通道号是介于 0 和 999 之间的任何整数值,前面带有井号 (#);它表示设备的特定通道。
通道是程序与输入或输出设备(如打印机或文件)之间的连接。