2012-12-05 39 views
2

我正在讀取文本文件並將其內容放在xml輸出文件中的標記中。我面臨的問題是,輸入文本文件包含一些控制字符,如<96><92>,這會導致我的腳本輸出無效的xml。如何將控制字符轉換爲HTML實體?

如何將這些控制字符轉換爲相應的數字HTML實體,以避免數據丟失以及生成的文件是否有效?

我曾嘗試:

perl -p -i -e 's/\x96/\&\#150\;/g; s/\x92/\&\#146\;/g;' out_xml 

但我想轉換任何控制字符爲HTML實體。

+1

[?你嘗試過什麼(http://whathaveyoutried.com) – mpe

+0

的perl -p -i -e「S/\ X96/\&\# 150 \; /克; S/\ X92/\&\#146 \; /克;」 out_xml,但想爲任何這樣的控制字符做 – user1878743

+0

編輯到你的問題。 – mpe

回答

2

HTML::Entities你想要做什麼:

$ perl -MHTML::Entities -le 'print encode_entities("\x96\x92")' 
&#150;&#146; 
+0

非常感謝,它幫助我實現了我一直在尋找的東西。 – user1878743

相關問題