我有一行coldfusion代码,其中包含一个用utf-8字符集编码的cfm文件,并将其保存到变量中。我遇到的问题是没有办法在cfinclude中指定一个字符集,结果变量似乎没有正确读取utf-8所以任何非ascii字符都被错误地呈现。
<cfsavecontent variable="content">
<cfinclude template="test.cfm">
</cfsavecontent>
<cfoutput>#content#</cfoutput>
如果我使用cffile,这不是问题,因为我可以指定一个chaset,但是不会为coldfusion变量解析该文件。
<cfset path = expandPath(".") & "\test.html">
<cffile action="read" file="#path#" variable="content" charset="utf-8">
<cfoutput>#content#</cfoutput>
所以我的问题 - 有没有办法将解析后的coldfusion文件加载到变量中,同时尊重特定的字符集?
答案 0 :(得分:9)
我不知道这是否有效,但我能想到的唯一一件事是
<cfprocessingdirective pageencoding="utf-8" />
标记在包含的代码的最顶部(test.cfm)。这指示CF在编译代码时使用特定的编码。
答案 1 :(得分:0)
我认为你需要在包含文件和主文件中使用cfprocessingdirective。