2011-10-05 78 views
0

我正在使用帶有阿拉伯文字母的Html。我試圖將字母解析爲在Excel中默認打開的csv文件。使用Perl將html中的阿拉伯文字母讀入csv

我使用Perl腳本解析刻字了,但是我想通過

use feature 'unicode_strings';

用Perl

這將使CSV存儲阿拉伯語刻字但事實並非如此。

有沒有辦法解決這個問題?

+0

對不起,這不是一個[好問題描述(http://catb.org/~esr/faqs/smart-questions.html),因爲沒有人能[複製什麼不順心]( http://www.chiark.greenend.org.uk/~sgtatham/bugs.html#showmehow),我們只能猜測。顯示你的代碼。提供樣本輸入和輸出。 – daxim

回答

1
use autodie qw(:all); 
use Web::Query qw(wq); 
use Text::CSV_XS qw(); 

my $csv = Text::CSV_XS->new({binary => 1}) 
    or die "Cannot use CSV: ".Text::CSV_XS->error_diag; 
open my $fh, '>:encoding(UTF-8)', 'm.csv'; 
$csv->print($fh, [wq(
    '<!DOCTYPE html> 
    <html><head><title></title></head><body>&#x645;&#x643;&#x629; &#x623;&#x648; 
    &#x645;&#x643;&#x629; &#x627;&#x644;&#x645;&#x643;&#x631;&#x645;&#x629; 
    &#x647;&#x64a; &#x645;&#x62f;&#x64a;&#x646;&#x629; 
    &#x645;&#x642;&#x62f;&#x633;&#x629; &#x644;&#x62f;&#x649; 
    &#x627;&#x644;&#x645;&#x633;&#x644;&#x645;&#x64a;&#x646;&#x60c; 
    &#x628;&#x647;&#x627; &#x627;&#x644;&#x645;&#x633;&#x62c;&#x62f; 
    &#x627;&#x644;&#x62d;&#x631;&#x627;&#x645;&#x60c; 
    &#x648;&#x627;&#x644;&#x643;&#x639;&#x628;&#x629; &#x627;&#x644;&#x62a;&#x64a; 
    &#x62a;&#x639;&#x62f; &#x642;&#x628;&#x644;&#x629; 
    &#x627;&#x644;&#x645;&#x633;&#x644;&#x645;&#x64a;&#x646; &#x641;&#x64a; 
    &#x635;&#x644;&#x627;&#x62a;&#x647;&#x645;.</body></html>' 
)->find('body')->text]); 
close $fh; 
+0

你無法快速解釋你的劇本可以讓你滿意嗎? – Ebikeneser

+0

快速說明:解析HTML並將其寫入CSV文件。 - 請[編輯你的問題](http://stackoverflow.com/posts/7661910/edit)並填寫[缺乏信息](http://stackoverflow.com/q/7661910#comment-9358313)。 – daxim