Show/Hide Toolbars

XSharp

Note该命令在头文件中定义,将由 X# 预处理器预处理为函数调用。如果禁用标准头文件 (-nostddefs),该命令将不可用。如果告诉编译器使用不同的标准头文件(-stddef ),则此命令也可能不可用。

用途

将屏幕输出写入文本文件。

语法

SET ALTERNATE TO [<cFileName> [ADDITIVE] ]

SET ALTERNATE ON | OFF | <lToggle>

 

参数

<cFileName>指定记录屏幕输出的 ASCII 文件名称。文件名必须包含驱动器和路径。文件名既可以是字面文件名,也可以是括号中的字符表达式。如果指定的文件名没有文件扩展名,则默认使用扩展名".TXT"。
 
ADDITIVE选项 ADDITIVE 将屏幕输出添加到文件 <cFileName> 的当前内容中。如果没有该选项,文件内容将被删除。如果名称为 <cFileName> 的文件不存在,则会创建该文件。

 

<lToggle><lToggle> 是一个逻辑表达式,必须放在括号中。除了逻辑表达式,还可以为 .T. 值指定选项 ON(真),为 .F.值指定选项 OFF(假)。指定 .T. 或 ON 时,屏幕输出将记录在文件 <cFileName> 中。

描述

命令 SET ALTERNATE 将打开一个记录屏幕输出的 ASCII 文件。只有使用 ? 或 LIST 等命令以及 QOut() 和 QQOut() 等函数执行的屏幕输出才会写入文件。包含 TO FILE 选项的命令与 SET ALTERNATE 类似。.

 

备用文件(ASCII 文件 <cFileName> )并不局限于一个工作区,而是可以在所有工作区使用。向文件的输出由选项 ON | OFF 或 <lToggle> 的逻辑值打开或关闭。在 SET ALTERNATE 命令中包含一个文件名,就定义了一个备用文件。如果调用 SET ALTERNATE TO 命令时没有指定文件名,则当前打开的备用文件将被关闭,屏幕输出将无法记录到文件中。通过 CLOSE ALTERNATE 和 CLOSE ALL 命令也可以关闭备用文件。

示例

 

FUNCTION Start
    USE Customers NEW
    SET ALTERNATE TO CustomerList.TXT
    SET CONSOLE OFF
    DO WHILE .NOT. Eof()
        ? Customers->LastName, Customers->FirstName
        ? Customers->Street
        ? Customers->City + ",", Customers->State, Customers->Zip
        ?
        SKIP
    ENDDO
    SET ALTERNATE TO
    SET CONSOLE ON
    USE
 
  RETURN

Visual FoxPro 方言示例(同上):

/// <summary>

/// X# 版本:2.20.0.3

/// </summary>

Function Start() As Void Strict

  *!* USE Customers New   && 当然,在 VFP 方言中也有效,但是下面的语句更兼容 VFP 语法

  Select 0

  Use customers

 

  Set Alternate To CustomerList.TXT

  Set Console Off

 

  *!* 也可以使用 not 或者 ! 替换 .not.

  *!* 也可以省略  customers.

  Do While .not. Eof()

       ? customers.LastName, customers.FirstName

       ? customers.Street

       ? customers.City + ",", customers.State, customers.Zip

       ?

      Skip

  Enddo

 

  Set Alternate To

  Set Console On

 

  Use

 

  Return

 

程序集

XSharp.RT.DLL

 

参见

SetAlternate(),SetAltFile(), SET CONSOLE