0
我嘗試通過在Perl腳本中對HTML標記進行硬編碼來創建HTML表。我從一個文本文件中獲取數據,然後按組件分解並將它們打印到HTML表格中。如何避免多次打印某些表格內容?
Ronnie Smith, javabook, javaclasses
Ronnie Smith, javabook, javamethods
Ronnie Smith, c-book, pointers
Carrlos Bater, htmlbook, htmltables
如何只打印了作者的名字,而不是一次印刷的三倍,並與書名相同的:文本文件(作者,書名,書的內容)的例子嗎?只有一位作者,Ronnie Smith
,寫了三本書,所以它應該屬於一個類別。另外例如javaclasses
和javamethods
來自同一本書javabook
,所以我們應該只打印一次javabook
。
我的腳本:
use strict;
use warnings;
my $Author;
my $bookName;
my $bookContent;
my $bookContentList = "List.txt";
open MYFILE, $bookContentList or die "could not open $bookContentList \n";
my @body = "";
push(@body, "<html> \n");
push(@body, "<head> \n");
push(@body, "<TABLE BORDER=\"0\"\n");
push(@body, " <TD>");
push(@body, "<div align=\"left\"><Table border=1 bordercolor= \"black\"> \n");
push(@body, "<tr bgcolor=\"white\"><TH><b>Author</b></TH><TH>Book Name </TH><TH>bookContent</TH></TR>");
push(@body, "<br>\n");
while (<MYFILE>) {
($Author, $bookName, $bookContent) = split(",");
push(
@body, "<TR><td>$Author</TD>
<td>$bookName</TD>
<td>$bookContent</TD>"
);
}
push(@body, "</div></Table>");
my $Joining = join('', @body);
push(@body, "</body></font>");
push(@body, "</html>");
my $htmlfile = "compliance.html";
open(HTML, ">$htmlfile") || warn("Can not create file");
print HTML "$Joining";
close HTML;
close MYFILE;
嘿謝謝您的回覆,但由於某種原因,我在嘗試編譯時遇到錯誤。它說:「標量找到了操作符在file.pl附近的位置」
啊,是的。我不能使用雙引號將整個字符串和屬性值分隔符分隔開來。 – Axeman
相關問題