1

假设我有很多对象,每个对象都有一个UID属性和一个信用卡 NOs 数组card_nos

我想以一种方式将信息转储到 CVS (Excel)文件中,将相同UID的单元格合并为一个单元格。一个UID跨越与其拥有的信用卡数量一样多的行,但至少有一张。

这是一个示例,用户001有 3 张卡,因此 cvs 文件将如下所示:

+--------------+
| 识别码 | 卡# |
--------------+
| | 卡1 |
      --------+
| 001 | 卡2 |
      --------+
| | 卡3 |
--------------+

有任何想法吗?提前致谢。

4

1 回答 1

4

您无法创建执行此操作的 CSV 文件 - CSV 格式不支持它。

尝试另一种方式,您会看到:使用您描述的格式创建一个工作表并将其保存为 CSV。你会收到一个警告,从

"[whatever you called it/] may contain features that are not compatible with CSV (Comma delimited)...."

接受限制,您将获得一个 CSV 文件。我的看起来像这样:

UID,Card#
001,Card1
,Card2
,Card3

...当我将它重新加载到 Excel 中时,它确实像我预期的那样丢失了合并:

+------+-------+
| UID  | Card# |
+------+-------+
| 1    | Card1 |
+------+-------+
|      | Card2 |
+------+-------+
|      | Card3 |
+------+-------+

但是,如果在您的应用程序中有意义的话,您可以rowspan使用 HTML 到达那里 - 以下 HTML 将按照所述加载合并的 UID 单元格(注意使用“ ”属性):

<table>
  <thead>
    <tr>
      <td>UID</td>
      <td>Card#</td>
    </tr>
  </thead>
  <tbody>
      <tr>
        <td rowspan="3">001</td>
        <td>Card1</td>
      </tr>
      <tr>
        <td>Card2</td>
      </tr>
      <tr>
        <td>Card3</td>
      </tr>
  </tbody>
</table>
于 2011-05-16T08:47:44.457 回答