当需要将字串代入Word档案又不想在客户端安装Office时,我们会以RTF档案格式将所要显示的字串取代掉设定在RTF档案里的变数后,再让客户下载并将副档名变更为*.doc。以下是可能的实作步骤:
在RTF中,中文字会以16进制来储存,而某些中文字的16进制字元的某两个字元组合恰巧会是某些符号的16进制字元。如此,当我们做字串取代后,有可能会发生取代后的文字在显示时出现乱码,甚至是档案无法开启的情况。
要解决此问题,我们必须在取代RTF档案内的变数前,就先将我们要代入的字串转成16进制,并加入特殊字元的前置符号\'后再进行取代,如此才能正常显示中文字。以下程式片段可将一字串转换为16进制并加入特殊字元的前置符号。
