2016-02-12 73 views
1

我想使用asciidoc来生成一个表。我使用asciidocfx。我创建了2个相同的表,一个加载外部csv文件,另一个是在asciidoc中创建的简单表。问题是,从加载的csv文件的表中为这些字符“...”生成一个 。使用asciidoc创建的表不生产该符号为 “...”asciidoc中从csv加载的表有奇怪的字符输出

以下是文字

.CSV table 
[format="csv",options="header"] 
|=================================================== 
include::table.csv[] 
|=================================================== 

.Asciidoc table 
[options="header"] 
|==== 
|Hello | World 

| Hi 
| Atlas... 

| Hi 
| Atlas.. 

| Hi 
| Atlas. 

|==== 

table.csv的内容

Hello ,World 
Hi,Atlas... 
Hi,Atlas.. 
Hi,Atlas. 

片断HTML输出。

<div class="sectionbody"> 
 
<table class="tableblock frame-all grid-all spread data-line-14"> 
 
<colgroup> 
 
<col style="width: 50%;"> 
 
<col style="width: 50%;"> 
 
</colgroup> 
 
<thead> 
 
<tr> 
 
<th class="tableblock halign-left valign-top">Hello</th> 
 
<th class="tableblock halign-left valign-top">World</th> 
 
</tr> 
 
</thead> 
 
<tbody> 
 
<tr> 
 
<td class="tableblock halign-left valign-top"><p class="tableblock">Hi</p></td> 
 
<td class="tableblock halign-left valign-top"><p class="tableblock">Atlas�</p></td> 
 
</tr> 
 
<tr> 
 
<td class="tableblock halign-left valign-top"><p class="tableblock">Hi</p></td> 
 
<td class="tableblock halign-left valign-top"><p class="tableblock">Atlas..</p></td> 
 
</tr> 
 
<tr> 
 
<td class="tableblock halign-left valign-top"><p class="tableblock">Hi</p></td> 
 
<td class="tableblock halign-left valign-top"><p class="tableblock">Atlas.</p></td> 
 
</tr> 
 
</tbody> 
 
</table> 
 
<table class="tableblock frame-all grid-all spread data-line-20"> 
 
<caption class="title">Table 1. My table</caption> 
 
<colgroup> 
 
<col style="width: 50%;"> 
 
<col style="width: 50%;"> 
 
</colgroup> 
 
<thead> 
 
<tr> 
 
<th class="tableblock halign-left valign-top">Hello</th> 
 
<th class="tableblock halign-left valign-top">World</th> 
 
</tr> 
 
</thead> 
 
<tbody> 
 
<tr> 
 
<td class="tableblock halign-left valign-top"><p class="tableblock">Hi</p></td> 
 
<td class="tableblock halign-left valign-top"><p class="tableblock">Atlas…​</p></td> 
 
</tr> 
 
<tr> 
 
<td class="tableblock halign-left valign-top"><p class="tableblock">Hi</p></td> 
 
<td class="tableblock halign-left valign-top"><p class="tableblock">Atlas..</p></td> 
 
</tr> 
 
<tr> 
 
<td class="tableblock halign-left valign-top"><p class="tableblock">Hi</p></td> 
 
<td class="tableblock halign-left valign-top"><p class="tableblock">Atlas.</p></td> 
 
</tr> 
 
</tbody> 
 
</table> 
 
</div>

+1

你确定你的csv包含纯ASCII而不是utf-8字符吗? “...”是除ASCII之外的其他字符编码的唯一字符。尝试使用十六进制编辑器打开CSV文件以检查它是3点还是多字节字符。 –

+0

你说得对。 Excel导出csv文件并创建*那个*字符而不是“...”。我在记事本中编辑过它。浪费时间认为这是asciidoc问题。谢谢。顺便说一句,你可以发布这个答案,以便我可以将其标记为这样吗? –

回答

1

“......” 应该是单个字符,而不是3个点。 所以你有一个多字节字符suc作为Utf-8或其他不是ASCII的字符集。