2010-11-06 104 views
0

我正在寫一個腳本,將一種文件類型轉換爲另一種(對於一些通常由教會使用的歌曲演示軟件)。我無法從一種文件類型中提取所有歌曲歌詞和相關數據,現在我需要轉換它對另一個。使用PHP對RTF數據進行編碼/解碼?

其他文件類型在XML節點內存儲爲RTF數據。例如:

RTFData="e1xydGYxXGFuc2lcYW5zaWNwZzEyNTJcY29jb2FydGY5NDlcY29jb2FzdWJydGY1NDAKe1xmb250dGJsXGYwXGZzd2lzc1xmY2hhcnNldDAgSGVsdmV0aWNhO30Ke1xjb2xvcnRibDtccmVkMjU1XGdyZWVuMjU1XGJsdWUyNTU7fQpccGFyZFx0eDU2MFx0eDExMjBcdHgxNjgwXHR4MjI0MFx0eDI4MDBcdHgzMzYwXHR4MzkyMFx0eDQ0ODBcdHg1MDQwXHR4NTYwMFx0eDYxNjBcdHg2NzIwXHFjXHBhcmRpcm5hdHVyYWwKClxmMFxmczEyMCBcY2YxIFdpdGggZXZlcnkgYnJlYXRoXApXaXRoIGV2ZXJ5IHN0ZXB9" 

因此,首先,我需要能夠將這些字符串解碼,所以我可以看到他們是如何裝配的,但一旦我明白這一點我還需要一種方法來字符串轉換成這種格式。

我在谷歌搜索周圍,但沒有發現用PHP編碼或解碼RTF數據的好方案。有任何想法嗎?

+0

什麼你顯示的不是RTF數據。這就是RTF的樣子:http://en.wikipedia.org/wiki/Rich_Text_Format它似乎被某種方式混淆了,我無法識別哪一個。你能找出這些數據是什麼嗎? – 2010-11-06 20:24:32

+0

它看起來像是base64編碼。我運行它通過http://www.motobit.com/util/base64-decoder-encoder.asp,它顯示了一些RTF代碼 – Mikpa 2010-11-06 20:32:18

+0

良好的通話,謝謝!我想我最初認爲它是Bas64,並嘗試了一個顯然不起作用的轉換器,所以我認爲這正是RTF的樣子。你是對的,它是Base64編碼RTF數據 – 2010-11-07 06:53:57

回答

0

一些快速谷歌搜索變成這樣了:RTFGen

+0

我還沒有嘗試過,但它似乎正是我所期待的。謝謝! – 2010-11-07 06:52:32

2

您擁有的數據是base64編碼的。一旦你有,你可以解釋RTF數據本身,做你想要做什麼用

$rtf = base64_decode($RTFData); 

要獲得RTF版本,可以通過BASE64_DECODE像這樣運行它。

如果你只是想將其轉換爲例如純文本,你可以找到一個PHP腳本來做到這一點,它是如何工作在這裏:http://www.webcheatsheet.com/php/reading_the_clean_text_from_rtf.php

相關問題