标签: html-encode

ASP.NET Server.HtmlEncode不会编码€

我知道欧元货币符号(€)按€HTML 编码,但System.Web.HttpUtility.HtmlEncode("€")根本不编码.有谁知道那是为什么?

c# asp.net html-encode

4
推荐指数
1
解决办法
2282
查看次数

如何将符号 - "†"转换为HTML代码?

我正在尝试将匕首'†'符号写入HTML页面,该页面将转换为PDF文档,但这在PDF上显示为"â€"

我知道我需要使用此代码的HTML代码,即†.

我已成功完成了'€',但在这些情况下,我已将代码直接写入HTML.在这种情况下,我正在从XML文件中读取符号.当我检查包含符号的变量的值时,它显示为'†'.

我应该注意到我已经尝试从XML文件中读取符号和代码,如下所示:

<fund id="777" countryid="N0" append="&#8224;" />
Run Code Online (Sandbox Code Playgroud)

<fund id="777" countryid="N0" append="†" />
Run Code Online (Sandbox Code Playgroud)

但两者都作为符号存储在变量中,当我将它们写入页面时,两者都呈现为"â€".另外,我尝试过以下方法:

string code = "&#8224;";
string symbol = "†";
string htmlEncodedCode = HttpUtility.HtmlEncode(code);
string htmlEncodedSymbol = HttpUtility.HtmlEncode(symbol);

tc.Text = fund.Name + code + " " + symbol + " " + 
    htmlEncodedCode + " " + htmlEncodedSymbol;
Run Code Online (Sandbox Code Playgroud)

但只有第一部作品.它在文件中显示为:

FundName† †&#8224; â€
Run Code Online (Sandbox Code Playgroud)

有人可以建议我如何让这个工作?

更新:

@James Curran的回答是正确的.为了清楚起见,我不得不将XML更改为:

<fund id="777" countryid="N0" append="&amp;dagger;" /> 
Run Code Online (Sandbox Code Playgroud)

在我的C#中:

tc.Text = fund.Name + append;
Run Code Online (Sandbox Code Playgroud)

c# symbols html-encode

4
推荐指数
1
解决办法
5143
查看次数

为什么HtmlEncode和HtmlDecode在.NET中不同构?

我发现这令人惊讶,而且很烦人.

例:

Decode(&rdquo;) => ”
Encode(”)       => ”
Run Code Online (Sandbox Code Playgroud)

相关课程:

.NET 4:   System.Net.WebUtility
.NET 3.5: System.Web.HttpUtility
Run Code Online (Sandbox Code Playgroud)

我可以理解一个网页可以是Unicode,但我的情况是输出不能是UTF8.

有什么东西(也许是一个HtmlWriter类)可以做到这一点,而我不必重新发明轮子?

替代方案:

string HtmlUnicodeEncode(string input)
{
    var sb = new StringBuilder();

    foreach (var c in input)
    {
        if (c > 127)
        {
            sb.AppendFormat("&#x{0:X4};", (int)c);
        }
        else
        {
            sb.Append(c);
        }
    }

    return sb.ToString();
}
Run Code Online (Sandbox Code Playgroud)

.net unicode html-encode html-entities

4
推荐指数
1
解决办法
614
查看次数

如何通过 twig 使用 html 实体转义整个块?

我想创建一个包含 html 编码块的 xml 输出。

这是我的树枝片段:

<rawXml>
    <message>
        {% autoescape 'html' %}
            <ThisShouldBeEscaped>
                <ButItIsnt>Dang</ButItIsnt>
            </ThisShouldBeEscaped>
        {% endautoescape %}
    </message>
</rawXml>
Run Code Online (Sandbox Code Playgroud)

在渲染时,我希望以这种方式对消息内容进行 html 编码:

&lt;ThisShouldBeEscaped&gt;
    &lt;ButItIsnt&gt;Dang&lt;/ButItIsnt&gt;
&lt;/ThisShouldBeEscaped&gt;
Run Code Online (Sandbox Code Playgroud)

但我得到了完整的原始 XML 响应:

<rawXml>
    <message>
        <ThisShouldBeEscaped>
            <ButItIsnt>Dang</ButItIsnt>
        </ThisShouldBeEscaped>
    </message>
</rawXml>
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

php html-encode html-entities symfony twig

4
推荐指数
1
解决办法
1106
查看次数

ColdFusion EncodeForHTML 和换行符

在 ColdFusion 中使用 EncodeForHTML 时,换行符 (\n) 和回车符 (\r) 会转换为哪些字符?我已经尝试了所有我能想到的(或在网上找到的),但在我的 REReplace 语句中找不到我需要使用的东西,以便在编码后转换为 break (br) 标签(我需要这样做以进行显示)。

我想做的是类似的事情

#REReplace(EncodeForHTML(myVar), "html encoded newline etc chars", "<br />", "all")#
Run Code Online (Sandbox Code Playgroud)

但是,因为我无法弄清楚换行符和回车符被转换为唯一的方法,我可以让它在 EncodeForHTML 之前和之后执行 REReplace,这似乎不是很明智或有效。例如:

#REReplace(EncodeForHTML(REReplace(myVar, "\r\n|\n\r|\n|\r", "<br />", "all")), "&lt;br &##x2f;&gt;", "<br />", "all")#
Run Code Online (Sandbox Code Playgroud)

我正在使用 CF 10。

replace newline html-encode carriage-return coldfusion-10

4
推荐指数
1
解决办法
692
查看次数

ASP.NET MVC:如何在Html编码内容中允许一些HTML标记?

在MVC 2到Html.Encode()字符串中是否存在一些神奇的现有代码并允许某些html标记,如段落标记和中断?(从Linq到SQL数据库字段)

一个可怕的代码示例来实现这个效果:

Html.Encode(Model.fieldName).Replace("&lt;br /&gt;", "<br />")
Run Code Online (Sandbox Code Playgroud)

真正好的是重载一些东西并传递给一个充满允许的html标签的数组(或对象).

asp.net-mvc html-encode

3
推荐指数
1
解决办法
2468
查看次数

内容类型与HTML编码

我正在建立一个网站,我已将其内容类型设置为使用charset UTF-8.我也使用HTML编码的特殊字符,即:而不是á我有&aacute;.

现在我想知道(仍在建设网站)是否真的需要做这两件事.寻找答案我发现了这个:

http://www.w3.org/International/questions/qa-escapes.en.php

它说我不会对任何特殊字符使用HTML编码,但是>,<&.但原因是逃避

可以使阅读和维护源代码变得困难,并且还可以显着增加文件大小.

我认为这是真实但非常糟糕的论点.使用转义和特殊字符真的是相同的东西吗?

html html-encode character-encoding html-entities

3
推荐指数
1
解决办法
386
查看次数

PHP使用重音转换外来字符

嗨我正在尝试将一些文本与数据库中的文本进行比较..在数据库中,当我将数据库文本与我的字符串进行比较时,任何带有重音的文本都会像html一样编码(即.é)因为我的字符串只显示é..当我使用php函数htmlentities对字符串进行编码时,é变成了we怪异的?使用htmlspecialchars根本不编码é..

您如何建议我将é与é以及所有其他重音字符进行比较?

php compare html-encode diacritics

3
推荐指数
2
解决办法
3万
查看次数

什么是(X)HTML中的保留字符?

是的,我用Google搜索了,令人惊讶地得到了令人困惑的答案.

一页说< > & "是(X)HTML中唯一的保留字符.毫无疑问,这是有道理的.

这个页面说的 < > & " '是(X)HTML中的保留字符.有点混乱,但没关系,这也是有道理的.

然后是这个页面说明< > & " © ° £和不间断的空格(&nbsp)都是(X)HTML中的保留字符.这毫无意义,几乎增加了我的困惑.

知识渊博的人,实际上知道这些东西的人,可以澄清(X)HTML中保留字符实际上是什么吗?

编辑:此外,如果包装在<pre>标签中代码中的所有保留字符应该被转义?或者只是这三个 - < > &??

html xhtml html-encode html-entities

3
推荐指数
2
解决办法
5306
查看次数

JQuery UI编码噩梦

我希望能够将任何字符串传递给JQuery UI中的按钮文本.

假设我有这个字符串:

Ajouter L'amie a la liste"amies"

实际传递此文本而不会导致大量JavaScript错误的唯一方法是对其进行HTML编码.

registerhtml.dialog({
        modal: true,
        title: 'My Dialog Title',
        resizable: false,
        buttons: [
            {
                text: 'Ajouter L&#39;amie a la liste &quot;amies&quot;',
                click: function(){
                    // Do something important
                    $(this).dialog('close');
                }
            },
            {
                text: 'Cancel',
                click: function() {
                    $(this).dialog('close');
                }
            }
        ]
    });
Run Code Online (Sandbox Code Playgroud)

但我没有在按钮中获得任何人类可读文本.只有相同的编码文本.

有没有快速解决此问题的方法?也许我在按钮对象中缺少一个选项.

或者我应该戴上手套,打电话给护士并在JQuery-ui.js文件中开始手术?

jquery jquery-ui html-encode html-escape-characters

3
推荐指数
1
解决办法
2328
查看次数