【发布时间】:2016-07-27 07:18:21
【问题描述】:
我在我的网站中使用了 UTF-8 编码和带有 vbscript 的 ASP 经典作为默认脚本语言。我已将文件分成更小的部分以便更好地管理。
我总是在分隔文件的第一行使用这个技巧来保留 UTF-8 编码,同时将文件保存在其他地方,语言字符会转换为奇怪的字符。
mainfile.asp
<html>
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
</head>
<body>
<!--#include file="sub.asp"--->
</body>
</html>
sub.asp
<%if 1=2 then%>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
<%end if%>
this is some characters in other language:
تست متن به زبان فارسی
这个技巧适用于离线保存,当页面在服务器上运行时也适用,因为这些额外的行被省略了(因为条件总是假的!):
有没有更好的方法来保存分隔文件中的编码?
我使用 Microsoft 表达式网络来编辑文件。
【问题讨论】:
-
你……真的吗?我已经多次讨论这个问题,为了保留编码,请确保使用所需的编码 (在本例中为 UTF-8) 保存物理文件,这意味着主 asp 文件和其中引用的任何包含文件。然后在主 asp 文件 (不是包含) 中指定
<% @CodePage = "65001" %>。在这里解释一切 - stackoverflow.com/a/21914278/692942 -
你说这个技巧有效,但是如果你正在编写一个不输出 HTML 页面的结构化 asp 文件怎么办?这充其量只是一个糟糕的 hack,并且取决于浏览器解释
meta标签。 -
谢谢。 “以所需编码保存文件”是什么意思?我使用微软的表达方式。你是怎么做到的?
-
掌心 - 我能给你的最好建议是使用记事本或更好的东西,比如 Notepad++。使用 Microsoft Expression 是自找麻烦,这就像 FrontPage 的日子一去不复返。您可以使用 Microsoft Visual Studio,但即使这样也需要一些箍来显示 "Advanced Save Options"。
-
谢谢。看来要换软件了……还有其他解决办法吗?
标签: encoding vbscript asp-classic microsoft-expression-web