# dotNet.ReoGrid 扩展库 - 导出为 HTML

将指定工作表导出为 HTML 到流中：

```aardio
sheet1.ExportAsHTML(System.IO.Stream stream)
sheet1.ExportAsHTML(System.IO.Stream stream, string pageTitle)
sheet1.ExportAsHTML(System.IO.Stream stream, string pageTitle, bool exportHeader)
```

示例：

```aardio
import System.IO;
var sheet1 = grid.CurrentWorkbook;
var fs = System.IO.FileStream("sample.html", 2/*FileMode.Create*/, 2/*FileAccess.Write*/);
sheet1.ExportAsHTML(fs, "示例页面");
fs.Close();
```

> 注意：aardio 中不需要 C# 的 `using` 语句块，但需要手动调用 `Close()` 方法关闭流。

## 导出为内存字符串

```aardio
import System.IO;
import System.Text;

var sheet1 = grid.CurrentWorkbook;
var ms = System.IO.MemoryStream(8192);
sheet1.ExportAsHTML(ms);
var outputString = System.Text.Encoding.Default.GetString(ms.ToArray());
ms.Close();

print(outputString); // 输出HTML字符串
```

## 不导出HTML头部（仅表格元素及其子元素）

通过将第三个参数 `exportHeader` 设为 false，可以阻止导出默认的HTML头部。这在需要自定义HTML或将表格嵌入现有HTML时非常有用。

```aardio
sheet1.ExportAsHTML(stream, null, false);
```

## 示例

编辑器中的工作表显示效果：

![140](../images/140-500x431.png)

导出为HTML后在Internet Explorer中的显示效果：

![141](../images/141-500x378.png)

---

### 使用说明补充：

1. 在 aardio 中调用 .NET 方法时，枚举值通常可以直接使用对应的数值。例如 `FileMode.Create` 对应数值 2。

2. aardio 中流对象使用完毕后需要显式调用 `Close()` 方法关闭，这与 C# 的 `using` 语句自动释放不同。

3. 导出到内存字符串时，需要调用 `ToArray()` 方法将 MemoryStream 转换为字节数组后再解码为字符串。

4. 如果只需要获取HTML表格部分（不包含完整的HTML文档结构），可以将 `exportHeader` 参数设为 false。