1

我遇到了以下问题:我是巴西人,在这里我们使用了奇怪的字符,例如“ç”或“ã”。所以,我正在为网络编程,当我阅读文本文件并显示其内容时,它会替换“?”的奇怪字符。

编辑:

我有这个代码:

<script type="text/javascript">
$(getImages);
function getImages() {
    $.getJSON("/home/ListImagesProducts", showImages);
}

function showImages(data) {
    $("#directoryImages").append("<ul id = 'productImages'>");
    for (i = 0; i < data.length; i++) {
        var directories = data[i];

        $("#directoryImages ul").append("<li><img src='../Content/images/Products/" + directories.ImageName + "' /><div class = 'description'> ççç" + directories.DescriptionName + "</li>");
    }
    //$("#directoryImages").append("</ ul>");
}

'directories.DescriptionName' 之前的 'ççç' 通常不会显示。我正在从记事本文件中读取文本。我已经放了'UTF-8'。

如何显示从文件中读取的正常文本?

4

1 回答 1

2

您的文档需要UTF-8字符编码

<!DOCTYPE html>
<html>
<head>    
<meta charset=utf-8 />    
<title>My page</title>
</head>
<body>

    <p>çãšđčćž</p>

</body>
</html>

此外,如果您使用一些文本编辑器(如 Notepad++),请确保设置编码:

无 BOM 的 UTF-8 编码

此外,您的代码中有一些错误。你搞砸了,'"没有结束</div>

src='../Content/images/Products/" + directories.ImageName + "' /><div class = 'description'> ççç" + directories.DescriptionName + "</li>"

应该:

src='../Content/images/Products/' + directories.ImageName + ' /><div class="description"> ççç ' + directories.DescriptionName + '</div></li>'

而不是.append()在 for 循环中使用(这非常慢)创建一个字符串,将其填充到for loopand 而不是只追加一次:

var ul = "<ul id='productImages'>";

for (i=0; i<data.length; i++) {
    var directories = data[i];
    ul += "<li><img src='../Content/images/Products/" + directories.ImageName + "' /><div class = 'description'> ççç" + directories.DescriptionName + "</div></li>";
}

ul += "</ul>";

$("#directoryImages").append( ul );
于 2013-07-30T01:41:17.473 回答